條件查詢
$customers = Customer::find()->where($cond)->all();
$cond就是我們所謂的條件,條件的寫法也根據查詢資料的不同存在差異,那麼如何用yii2的方式來寫查詢條件呢?
[[簡單條件]]
// SQL: (type = 1) AND (status = 2). $cond = ['type' => 1, 'status' => 2] // SQL:(id IN (1, 2, 3)) AND (status = 2) $cond = ['id' => [1, 2, 3], 'status' => 2] //SQL:status IS NULL $cond = ['status' => null]
【and】:將不同的條件組合在一起,用法舉例:
//SQL:`id=1 AND id=2` $cond = ['and', 'id=1', 'id=2'] //SQL:`type=1 AND (id=1 OR id=2)` $cond = ['and', 'type=1', ['or', 'id=1', 'id=2']] //SQL:`type=1 AND (id=1 OR id=2)` //此写法'='可以换成其他操作符,例:in like != >=等 $cond = [ 'and', ['=', 'type', 1], [ 'or', ['=', 'id', '1'], ['=', 'id', '2'], ] ]
[[or]]:
/SQL:`(type IN (7, 8, 9) OR (id IN (1, 2, 3)))` $cond = ['or', ['type' => [7, 8, 9]], ['id' => [1, 2, 3]]
[[not]]:
//SQL:`NOT (attribute IS NULL)` $cond = ['not', ['attribute' => null]]
[[between]]: not between 用法相同
//SQL:`id BETWEEN 1 AND 10` $cond = ['between', 'id', 1, 10]
[[in]]: not in 用法類似
//SQL:`id IN (1, 2, 3)` $cond = ['in', 'id', [1, 2, 3]] or $cond = ['id'=>[1, 2, 3]]
//IN条件也适用于多字段 $cond = ['in', ['id', 'name'], [['id' => 1, 'name' => 'foo'], ['id' => 2, 'name' => 'bar']]] //也适用于内嵌sql语句 $cond = ['in', 'user_id', (new Query())->select('id')->from('users')->where(['active' => 1])]
##[[like]]:
//SQL:`name LIKE '%tester%'` $cond = ['like', 'name', 'tester'] //SQL:`name LIKE '%test%' AND name LIKE '%sample%'` $cond = ['like', 'name', ['test', 'sample']] //SQL:`name LIKE '%tester'` $cond = ['like', 'name', '%tester', false]
[[exists]]: not exists用法類似
//SQL:EXISTS (SELECT "id" FROM "users" WHERE "active"=1) $cond = ['exists', (new Query())->select('id')->from('users')->where(['active' => 1])]此外,您可以指定任意運算子如下:
//SQL:`id >= 10` $cond = ['>=', 'id', 10] //SQL:`id != 10` $cond = ['!=', 'id', 10]PHP中文網,有大量免費的
Yii入門教學,歡迎大家學習!
以上是yii框架怎麼條件查詢的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Yii是一個高性能的PHP框架,適合快速開發Web應用。其核心概念包括:組件化設計:Yii提供豐富的組件和擴展,支持自動代碼生成,提升開發效率。 MVC架構:採用“約定優於配置”的設計理念,提高運行效率。緩存和數據庫支持:提供強大的緩存機制和數據庫操作,優化應用性能。

Yii在現代開發中依然具有競爭力。 1)高性能:採用延遲加載和緩存機制。 2)安全性:內置CSRF和SQL注入防護。 3)擴展性:組件化設計便於擴展和自定義。

Yii社區提供了豐富的支持和資源。 1.訪問官方網站和GitHub獲取文檔和代碼。 2.利用官方論壇和StackOverflow解決技術問題。 3.通過GitHubIssues報告bug和提出建議。 4.使用文檔和教程學習Yii框架。

Yii是一個高性能的PHP框架,專為快速開發和高效的代碼生成設計。其核心特性包括:MVC架構:Yii採用MVC架構,幫助開發者將應用邏輯分離,使代碼更易維護和擴展。組件化和代碼生成:通過組件化和代碼生成,Yii減少開發者的重複工作,提高開發效率。性能優化:Yii使用延遲加載和緩存技術,確保高負載下的高效運行,並提供強大的ORM功能簡化數據庫操作。

Yii是一個基於PHP的高性能框架,適用於快速開發Web應用。 1)它採用MVC架構和組件化設計,簡化開發過程。 2)Yii提供了豐富的功能,如ActiveRecord、RESTfulAPI等,支持高並發和擴展。 3)使用Gii工具可以快速生成CRUD代碼,提高開發效率。 4)調試時,可檢查配置文件、使用調試工具和查看日誌。 5)性能優化建議包括使用緩存、優化數據庫查詢和保持代碼可讀性。

yiiremainspularbutislessfavoredthanlaravel,withabout14kgithubstars.itexcelsinperformanceandactiverecord,buthasasteperlearningcurveandasmallerecosystem.it'sidealfordealfordealfordEvelforkerfordEvelforkerplovelfordEvelforkerporporporporporporporporizatized efferporization effervastecoseposevastecosystecystemystem。

Yii是一個高性能的PHP框架,其獨特之處在於組件化架構、強大的ORM和出色的安全性。 1.組件化架構讓開發者能靈活拼裝功能。 2.強大的ORM簡化了數據操作。 3.內置多種安全功能,確保應用安全。

Yii框架採用MVC架構,並通過組件、模塊等增強其靈活性和擴展性。 1)MVC模式將應用邏輯分為模型、視圖和控制器。 2)Yii的MVC實現通過動作細化請求處理。 3)Yii支持模塊化開發,提升代碼組織和管理。 4)使用緩存和數據庫查詢優化可提升性能。


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

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

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

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中