yii的CURD操作
這篇文章主要介紹了yii的CURD操作技巧,以實例形式詳細分析了基於yii框架的增刪改查的具體用法,非常具有實用價值,需要的朋友可以參考下
本文實例講述了yii的CURD操作技巧。分享給大家供大家參考。具體分析如下:
CURD是一個資料庫技術中的縮寫詞,一般的專案開發的各種參數的基本功能都是CURD。它代表創建(Create)、更新(Update)、讀取(Retrieve)和刪除(Delete)操作。本文來講講Yii框架的CURD操作。
一、查詢資料集合
1、
#複製程式碼 程式碼如下:
$admin=Admin::model()->findAll($condition,$params);
該方法是根據一個條件查詢一個集合,如:
複製程式碼 程式碼如下:
findAll('username=:name',array(':name'=>$username));
2、
複製程式碼 程式碼如下:
$admin=Admin::model()->findAllByPk($postIDs,$condition,$params); findAllByPk($id,'name like ':name' and age=:age',array(':name'=>$name,'age'=>$age));
該方法是根據主鍵查詢一個集合,可以使用多個主鍵,如:
複製程式碼 程式碼如下:
findAllByPk(array(1,2));
3、
複製程式碼 程式碼如下:
$admin=Admin::model()-> findAllByAttributes($attributes,$condition,$params);
這個方法是根據條件查詢一個集合,可以是多個條件,把條件放到陣列裡面,如:
複製程式碼 程式碼如下:
findAllByAttributes(array('username'=>'admin'));
4、
複製程式碼 程式碼如下:
$admin=Admin::model()->findAllBySql($sql,$params);
此方法是根據SQL語句查詢一個陣列,如:
複製程式碼 程式碼如下:
findAllBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
二、查詢物件的方法
1、
複製程式碼 程式碼如下:
$admin=Admin::model()->findByPk($postID,$condition,$params);
根據主鍵查詢出一個物件,如:findByPk(1);
2、
複製程式碼 程式碼如下:
$row=Admin::model()->find($condition,$params);
根據一個條件查詢出一組數據,可能是多個,但他只傳回第一行資料,如:
複製程式碼 程式碼如下:
find('username=:name',array(':name'=>'admin'));
#3、
複製程式碼 程式碼如下:
$admin=Admin::model()-> findByAttributes($attributes,$condition,$params);
該方法是根據條件查詢一組數據,可以是多個條件,把條件放到數組裡面,他查詢的也是第一條數據,如:
##複製代碼 程式碼如下:
findByAttributes(array('username'=>'admin'));
複製程式碼 程式碼如下:
$admin=Admin::model()->findBySql($sql,$params);
複製程式碼 程式碼如下:
findBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
複製程式碼 程式碼如下:
$criteria=new CDbCriteria; $criteria->select='username'; // only select the 'title' column $criteria->condition='username=:username'; $criteria->params=array(':username=>'admin'); $post=Post::model()->find($criteria); // $params isnot needed
三、查詢個數,判斷查詢是否有結果
1、複製程式碼 程式碼如下:
$n=Post::model()->count($condition,$params);
複製程式碼 程式碼如下:
count('username=:name',array(':name'=>$username));
#複製程式碼 程式碼如下:
$n=Post::model()->countBySql($sql,$params);
複製程式碼 程式碼如下:
countBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
複製程式碼 程式碼如下:
$exists=Post::model()->exists($condition,$params);
四、新增的方法
複製程式碼 程式碼如下:
$admin=newAdmin; $admin->username=$username; $admin->password=$password; if($admin->save()>0){ echo '添加成功'; }else{ echo '添加失败'; }
五、修改過的方法
1、複製程式碼 程式碼如下:
Post::model()->updateAll($attributes,$condition,$params); $count =Admin::model()->updateAll(array('username'=>'11111′,'password'=>'11111′),'password=:pass',array(':pass'=>'1111a1′)); if($count>0){ echo '修改成功'; }else{ echo '修改失败'; }
程式碼如下:Post::model()->updateByPk($pk,$attributes,$condition,$params);
$count =Admin::model()->updateByPk(1,array('username'=>'admin','password'=>'admin'));
$count =Admin::model()->updateByPk(array(1,2),array('username'=>'admin','password'=>'admin'),'username=:name',array(':name'=>'admin'));
if($count>0){
echo '修改成功';
}else{
echo '修改失败';
}
3、
複製程式碼 程式碼如下:Post::model()->updateCounters($counters,$condition,$params);
$count=Admin::model()->updateCounters(array('status'=>1),'username=:name',array(':name'=>'admin'));
if($count>0){
echo '修改成功';
}else{
echo '修改失败';
}
array('status'=& gt;1)代表数据库中的admin表根据条件username='admin',查询出的所有结果status字段都自加1
##1、
复制代码 代码如下:
Post::model()->deleteAll($condition,$params); $count = Admin::model()->deleteAll('username=:nameandpassword=:pass',array(':name'=>'admin',':pass'=>'admin')); $id=1,2,3 deleteAll('id in('.$id.')');删除id为这些的数据 if($count>0){ echo '删除成功'; }else{ echo '删除失败'; }
2、
复制代码 代码如下:
Post::model()->deleteByPk($pk,$condition,$params); $count = Admin::model()->deleteByPk(1); $count =Admin::model()->deleteByPk(array(1,2),'username=:name',array(':name'=>'admin')); if($count>0){ echo '删除成功'; }else{ echo '删除失败'; }
相关推荐:
以上是yii的CURD操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PyCharm是一款非常受歡迎的Python整合開發環境(IDE),它提供了豐富的功能和工具,使得Python開發變得更有效率和便利。本文將為大家介紹PyCharm的基本操作方法,並提供具體的程式碼範例,幫助讀者快速入門並熟練操作工具。 1.下載安裝PyCharm首先,我們需要前往PyCharm官網(https://www.jetbrains.com/pyc

sudo(超級使用者執行)是Linux和Unix系統中的關鍵指令,允許一般使用者以root權限執行特定指令。 sudo的功能主要體現在以下幾個方面:提供權限控制:sudo透過授權使用者以臨時方式取得超級使用者權限,從而實現了對系統資源和敏感操作的嚴格控制。普通用戶只能在需要時透過sudo獲得臨時的特權,而不需要一直以超級用戶登入。提升安全性:透過使用sudo,可以避免在常規操作中使用root帳號。使用root帳戶進行所有操作可能會導致意外的系統損壞,因為任何錯誤或不小心的操作都將具有完全的權限。而

想必很多的用戶家裡都有那麼幾台不用的電腦,因為長時間不用完全忘了開機密碼,於是想知道一下,忘記密碼要怎麼操作呢?那就一起來看看吧。 win10開機密碼忘記按F2怎麼操作1、按下電腦的電源鍵,然後開機時按下F2(不同電腦品牌進入bios的按鍵也不同)。 2.在bios介面中,找到security選項(不同品牌電腦的位置可能有所不同)。一般都在頂部的設定選單中。 3.然後找到SupervisorPassword選項並且點選。 4.這時候用戶就可以看到自己的密碼了,同時找到旁邊的Enabled切換為Dis

LinuxDeploy的操作步驟及注意事項LinuxDeploy是一款強大的工具,可協助使用者在Android裝置上快速部署各種Linux發行版,讓使用者在行動裝置上體驗完整的Linux系統。本文將詳細介紹LinuxDeploy的操作步驟以及注意事項,同時提供具體的程式碼範例,幫助讀者更好地使用此工具。操作步驟:安裝LinuxDeploy:首先在

Apple在iPhone15Pro和15ProMax中帶來了一些Pro獨有的硬體功能,吸引了所有人的注意。我們正在談論鈦合金框架、時尚的設計、全新的A17Pro晶片組、令人興奮的5倍長焦鏡頭等等。在iPhone15Pro機型添加的所有花里胡哨的功能中,操作按鈕仍然是一個突出和突出的功能。毋庸置疑,它是在iPhone上啟動操作的有用補充。也就是說,您可能會不小心按住“操作”按鈕並無意中觸發功能。坦白說,這很煩人。要避免這種情況,您應該停用iPhone15Pro和15ProMax上的操作按鈕。讓

隨著智慧型手機的普及,螢幕截圖功能成為日常使用手機的必備技能之一。華為Mate60Pro作為華為公司的旗艦手機之一,其截圖功能自然也備受用戶關注。今天,我們就來分享華為Mate60Pro手機的截圖操作步驟,讓大家能夠更方便地進行截圖操作。首先,華為Mate60Pro手機提供了多種截圖方式,可以依照個人習慣選擇適合自己的方式來操作。以下詳細介紹幾種常用的截

CSS網頁滾動監聽:監聽網頁滾動事件並執行對應的操作隨著前端技術的不斷發展,網頁的效果和互動也越來越豐富多樣。其中,滾動監聽是一種常見的技術,可以實現在使用者滾動網頁時,根據滾動位置執行一些特效或操作。一般來說,滾動監聽可以透過JavaScript來實現。但是,在某些情況下,我們也可以透過純CSS來實現滾動監聽的效果。本文將介紹如何透過CSS來實現網頁的滾動

蘋果的iPhone15Pro和iPhone15ProMax引入了一個新的可編程動作按鈕,取代了音量按鈕上方的傳統響鈴/靜音開關。繼續閱讀以了解「操作」按鈕的功能,以及如何自訂。蘋果iPhone15Pro型號上全新的動作按鈕取代了啟動Ring和Silent的傳統iPhone開關。預設情況下,新按鈕仍會透過長按啟動這兩個功能,但您也可以讓長按執行一系列其他功能,包括快速存取相機或手電筒、啟動語音備忘錄、對焦模式、翻譯和放大鏡等輔助功能。您還可以將其與單一快捷方式相關聯,從而開闢大量其他可能
