温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

thinkphp中的add方法如何用

发布时间:2022-12-06 10:36:04 来源:亿速云 阅读:168 作者:iii 栏目:编程语言

本文小编为大家详细介绍“thinkphp中的add方法如何用”,内容详细,步骤清晰,细节处理妥当,希望这篇“thinkphp中的add方法如何用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

thinkphp中的add方法法用于向数据表添加数据,相当于SQL中的INSERT INTO行为,其使用语法如“if($lastInsId = $Dao->add($data)){...}”。

ThinkPHP 添加数据 add() 方法

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

ThinkPHP Insert 添加数据

添加数据 add 方法是 CURD(Create,Update,Read,Delete / 创建,修改,读取,删除)中的 Create 的实现,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"] = "12345@163.com";
    $data["regdate"] = time();
    // 写入数据
    if($lastInsId = $Dao->add($data)){
        echo "插入数据 id 为:$lastInsId";
    } else {
        $this->error('数据写入错误!');
    }
}

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

语法解读

  • M("User") 用于高效实例化一个数据模型(M 是 new Model 的简写,称为快捷方法),参数为要操作的表名。

  • 接下来构建要保存数据的数组 $data 。

  • 最后是用 add() 方法将数据写入库表,由于使用的是 M快捷方法,需要将 $data 数组传入 add() 方法。

  • add() 方法如果添加数据记录成功,返回的是新数据记录主键,可直接得到。

该例子实际运行的 SQL 为:

INSERT INTO user(username,password,email,regdate) VALUES ('小王','e10adc3949ba59abbe56e057f20f883e',
'12345@163.com',1283612673)

对象方式添加数据

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

public function insert(){
    header("Content-Type:text/html; charset=utf-8");
    $Dao = M("User");// 实例化模型类
    // 数据对象赋值
    $Dao->username = "小王";
    $Dao->password = md5("123456");
    $Dao->email = "12345@163.com";
    $Dao->regdate = time();
    // 写入数据
    if($lastInsId = $Dao->add()){
        echo "插入数据 id 为:$lastInsId";
    } else {
        $this->error('数据写入错误!');
    }
}

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

读到这里,这篇“thinkphp中的add方法如何用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI