本文小編為大家詳細(xì)介紹“thinkphp5中save方法如何用”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“thinkphp5中save方法如何用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。
創(chuàng)新互聯(lián) - 服務(wù)器托管,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),服務(wù)器托管,西南服務(wù)器托管,四川/成都大帶寬,成都機(jī)柜租用,四川老牌IDC服務(wù)商
在thinkphp5中,save()方法用于向指定數(shù)據(jù)表中添加一條記錄,該方法每次僅能向表中添加一條新記錄,添加多條可重復(fù)執(zhí)行,語法為“模型對象 -> save(數(shù)組)”或“模型對象 -> data(數(shù)組) -> save();”。
本文操作環(huán)境:Windows10系統(tǒng)、ThinkPHP5版、Dell G3電腦。
新增單條數(shù)據(jù):save( )方法
功能:向指定數(shù)據(jù)表中添加一條記錄
該方法每次僅能向表中添加一條新記錄,添加多條可重復(fù)執(zhí)行,不過后面要學(xué)習(xí)的saveAll()可一次性添加多條
save方法是Model類中較復(fù)雜的方法之一,因為save方法身兼多職,不僅用于新增,還可以用于更新數(shù)據(jù)。
基本語法:
格式1:將數(shù)據(jù)直接寫在save方法參數(shù)中
模型對象 -> save(數(shù)組);
格式2:先生成數(shù)據(jù)對象,然后用save方法直接寫入表中
模型對象 -> data(數(shù)組) -> save();
這二種語法都可以完成新增操作。但是第二種語法結(jié)構(gòu)更加清晰,可讀性好,修改更加方便。
<?php namespace app\index\controller; use app\index\model\Staff; class Index { public function index(){ //1.創(chuàng)建數(shù)據(jù):與表中字段對應(yīng) $data = []; $data['name'] = '周星星'; $data['sex'] = 1; $data['age'] = 39; $data['salary'] = 3500; $data['dept'] = 3; $data['hiredate'] = date('Y-m-d',time()); //2.創(chuàng)建數(shù)據(jù)對象 $model = (new Staff())-> data($data); //3.獲取新增操作執(zhí)行前:數(shù)據(jù)對象原始數(shù)據(jù) $data_before = $model -> getData(); //4.查看新增操作執(zhí)行前的數(shù)據(jù)對象:$model echo '查看新增操作執(zhí)行前的數(shù)據(jù)對象:<br />'; dump($data_before); //5.將數(shù)據(jù)對象原始數(shù)據(jù)寫入數(shù)據(jù)表中,返回影響記錄數(shù) //allowField(true)過濾post數(shù)組中的非數(shù)據(jù)表字段數(shù)據(jù) $affected = $model -> allowField(true) -> save(); //6.獲取新增操作執(zhí)行后:數(shù)據(jù)對象原始數(shù)據(jù) $data_after = $model -> getData(); //7.查看新增操作執(zhí)行后的數(shù)據(jù)對象:$model echo '查看新增操作執(zhí)行后的數(shù)據(jù)對象:<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.創(chuàng)建數(shù)據(jù):與表中字段對應(yīng) $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方法如何用”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
本文標(biāo)題:thinkphp5中save方法如何用
分享路徑:http://muchs.cn/article10/gheodo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、App開發(fā)、網(wǎng)站收錄、營銷型網(wǎng)站建設(shè)、網(wǎng)站策劃、App設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)