中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

thinkphp5中save方法如何用

發布時間:2022-02-18 15:48:02 來源:億速云 閱讀:929 作者:iii 欄目:編程語言

本文小編為大家詳細介紹“thinkphp5中save方法如何用”,內容詳細,步驟清晰,細節處理妥當,希望這篇“thinkphp5中save方法如何用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

在thinkphp5中,save()方法用于向指定數據表中添加一條記錄,該方法每次僅能向表中添加一條新記錄,添加多條可重復執行,語法為“模型對象 -> save(數組)”或“模型對象 -> data(數組) -> save();”。

本文操作環境:Windows10系統、ThinkPHP5版、Dell G3電腦。

thinkphp5中save方法怎么用

新增單條數據:save( )方法

功能:向指定數據表中添加一條記錄

該方法每次僅能向表中添加一條新記錄,添加多條可重復執行,不過后面要學習的saveAll()可一次性添加多條

save方法是Model類中較復雜的方法之一,因為save方法身兼多職,不僅用于新增,還可以用于更新數據。

基本語法:

格式1:將數據直接寫在save方法參數中

模型對象 -> save(數組);

格式2:先生成數據對象,然后用save方法直接寫入表中

模型對象 -> data(數組) -> save();

這二種語法都可以完成新增操作。但是第二種語法結構更加清晰,可讀性好,修改更加方便。

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index {
  public function index(){
  //1.創建數據:與表中字段對應
  $data = [];
  $data['name'] = '周星星';
  $data['sex'] = 1;
  $data['age'] = 39;
  $data['salary'] = 3500;
  $data['dept'] = 3;
  $data['hiredate'] = date('Y-m-d',time());
  //2.創建數據對象
  $model = (new Staff())-> data($data);
  //3.獲取新增操作執行前:數據對象原始數據
  $data_before = $model -> getData();
  //4.查看新增操作執行前的數據對象:$model
  echo '查看新增操作執行前的數據對象:<br />';
  dump($data_before);
  //5.將數據對象原始數據寫入數據表中,返回影響記錄數
//allowField(true)過濾post數組中的非數據表字段數據
  $affected = $model -> allowField(true) -> save(); 
  //6.獲取新增操作執行后:數據對象原始數據
  $data_after = $model -> getData();
  //7.查看新增操作執行后的數據對象:$model
  echo '查看新增操作執行后的數據對象:<br />';
  dump($data_after);
  //8. 獲取新增記錄的主鍵id,等價于: $model -> id 
  $insert_ID = $affected ? $data_after['id'] : null;
  //6.驗證是否新增成功
  echo $affected ? '新增成功!新記錄主鍵id是:'.$insert_ID : '新增失敗!';    
  }
}

save()方法

class Index {
  public function index(){
  //1.創建數據:與表中字段對應
  $data = [];
  $data['name'] = '周星星';
  $data['sex'] = 1;
  $data['age'] = 39;
  $data['salary'] = 3500;
  $data['dept'] = 3;
  $data['hiredate'] = date('Y-m-d',time());
  $model = new Staff();
$affected = $model -> allowField(true) -> save($data); 
  $data['name'] = '周星星';
  $data['sex'] = 1;
  $data['age'] = 39;
  $data['salary'] = 3000;
  $data['dept'] = 3;
  $data['hiredate'] = date('Y-m-d',time());
$affected = $model -> allowField(true)
                           -> setAttr('id',null)  //清空ID
                           -> isUpdate(false)     //顯式指定新增
                           -> save($data);

讀到這里,這篇“thinkphp5中save方法如何用”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

浙江省| 山东| 额敏县| 鄂伦春自治旗| 鲁山县| 永和县| 武山县| 砚山县| 栖霞市| 桑日县| 海林市| 仲巴县| 金平| 大丰市| 潼南县| 宁夏| 翁牛特旗| 武冈市| 尼木县| 类乌齐县| 澳门| 崇信县| 化隆| 资源县| 德化县| 宜州市| 南汇区| 土默特右旗| 泗水县| 军事| 永福县| 定州市| 台东县| 浦北县| 新乡市| 台南市| 双牌县| 鄯善县| 蒙自县| 临夏县| 洮南市|