首頁  >  文章  >  php框架  >  thinkphp中的add方法怎麼用

thinkphp中的add方法怎麼用

藏色散人
藏色散人原創
2022-12-06 10:05:351764瀏覽

thinkphp中的add方法法用於向資料表新增數據,相當於SQL中的INSERT INTO行為,其使用語法如「if($lastInsId = $Dao->add($data)) {...}」。

thinkphp中的add方法怎麼用

本教學操作環境:Windows7系統、ThinkPHP5版、Dell G3電腦。

thinkphp中的add方法怎麼用?

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影片教學

以上是thinkphp中的add方法怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn