ThinkPHP 内置的 add 方法用于向数据表添加数据,相当于 SQL 中的 INSERT INTO 行为。现在以《PHP MySQL 数据库教程》中操作 user 表数据的例子为例,来演示如何在

ThinkPHP 添加数据 add 方法

ThinkPHP 内置的 add 方法用于向数据表添加数据,相当于 SQL 中的 INSERT INTO 行为。现在以《PHP MySQL 数据库教程》中操作 user 表数据的例子为例,来演示如何在

ThinkPHP 内置的 add 方法用于向数据表添加数据,相当于 SQL 中的 INSERT INTO 行为。

ThinkPHP Insert 添加数据

添加数据 add 方法是 CURD(Create,Update,Read,Delete / 创建,修改,读取,删除)中的 Create 的实现,ThinkPHP 支持以普通数组方式和面向对象方式将数据写入数据表。

现在以《PHP MySQL 数据库教程》中操作 user 表数据的例子(具体参见:MySQL Insert into 添加数据)为例,来演示如何在 ThinkPHP 中实现对数据表的数据添加操作。

例子:

在 IndexAction 控制器(Lib/Action/IndexAction.class.php)里,添加 insert() 操作:

public function insert(){
  header("Content-Type:text/html; charset=utf-8");
  $Dao = M("User");	// 实例化模型类

  // 构建写入的数据数组
  $data["username"] = "小王";
  $data["password"] = md5("123456");
  $data["email"] = "[email protected]";	
  $data["regdate"] = time();

  // 写入数据
  if($lastInsId = $Dao->add($data)){
    echo "插入数据 id 为:$lastInsId";
  } else {
    $this->error('数据写入错误!');
  }
}

访问执行该操作:http://127.0.0.1/html/Myapp/index.php/Index/insert

语法解读

  1. M("User") 用于高效实例化一个数据模型(M 是 new Model 的简写,称为快捷方法),参数为要操作的表名。
  2. 接下来构建要保存数据的数组 $data 。
  3. 最后是用 add() 方法将数据写入库表,由于使用的是 M快捷方法,需要将 $data 数组传入 add() 方法。
  4. add() 方法如果添加数据记录成功,返回的是新数据记录主键,可直接得到。

该例子实际运行的 SQL 为:

INSERT INTO user(username,password,email,regdate) VALUES ('小王','e10adc3949ba59abbe56e057f20f883e',
'[email protected]',1283612673)

提示:运行该例子,请确认在配置文件里正确配置了数据库的相关账号密码等信息,具体参见《ThinkPHP 项目配置》

对象方式添加数据

上面的方式是以构造数据数组的方式,然后将数据以参数形式传入 add 方法写入数据表。ThinkPHP 也支持以对象的方式将数据写入数据表,将上面的代码更改为:

public function insert(){
  header("Content-Type:text/html; charset=utf-8");
  $Dao = M("User");	// 实例化模型类

  // 数据对象赋值
  $Dao->username = "小王";
  $Dao->password = md5("123456");
  $Dao->email = "[email protected]";
  $Dao->regdate = time();

  // 写入数据
  if($lastInsId = $Dao->add()){
    echo "插入数据 id 为:$lastInsId";
  } else {
    $this->error('数据写入错误!');
  }
}

对象方式除了数据以数据对象方式赋值外,在调用 add 方法写入数据的时候不需要传递参数。

本文属原创,转载请注明原文:http://www.zhimatong.com/jiaocheng/547.html

为保证教程的实用性及扩大知识面覆盖,如果您有相似问题而未解决,可联系在线客服免费技术支持。

内容有用

相关阅读
关键词:

    联系
    顾问

    在线
    客服
    购物车
    账号登录

    没有账号?立即注册

    忘记密码

    登录即同意用户协议没有账号? 立即注册
    账号注册
    我已阅读并同意用户协议
    立即注册
    注册即同意用户协议已有账号? 立即登录
    找回密码

    操作步骤:邮箱验证->设置新密码

    注册即同意用户协议已有账号? 立即登录