Yii2.0框架模型多表關(guān)聯(lián)查詢(xún)示例
本文實(shí)例講述了Yii2.0框架模型多表關(guān)聯(lián)查詢(xún)。分享給大家供大家參考,具體如下:
聯(lián)表查詢(xún)--hasMany:
use app\models\User; $right = Right::findOne(2); //$user = User::find()->where(['right_id' => $right->attributes['id']])->all(); $user = $right->hasMany(User::className(),['right_id' => 'id'])->all(); //right_id為User::className()表中字段,id為Right::findOne(2)表字段
多表關(guān)聯(lián)一對(duì)多查詢(xún)優(yōu)化
如果多次用到同表相同查詢(xún):
\models\Rught.php
namespace app\models; use \yii\db\ActiveRecord; class Right extends ActiveRecord { public function getUsers() { $users = $this->hasMany(User::className(),['right_id' => 'id'])->asArray()p->all(); return $users; } }
\controller\home\actionAbout
public function actionAbout() { $right = Right::findOne(2); // $users = $right->getRights(); $users = $right->rights; dd($users); return $this->render('about'); }
多表關(guān)聯(lián)一對(duì)一查詢(xún)
\models\User.php
namespace app\models; use \yii\db\ActiveRecord; class User extends ActiveRecord { public function getRight() { $right = $this->hasOne(Right::className,['id' => 'right_id'])->asArray(); return $right; } }
\controller\home\actionAbout
$user = User::findOne(1); $right = $user->user; dd($right); return $this->render('about');
join
//查詢(xún)關(guān)聯(lián)表的所有數(shù)據(jù) $user = User->find()->with('right')->asArray()->all();
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Yii框架入門(mén)及常用技巧總結(jié)》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《smarty模板入門(mén)基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。
- YII2框架中自定義用戶(hù)認(rèn)證模型,完成登陸和注冊(cè)操作示例
- Yii2.0框架模型添加/修改/刪除數(shù)據(jù)操作示例
- Yii中Model(模型)的創(chuàng)建及使用方法
- yii框架表單模型使用及以數(shù)組形式提交表單數(shù)據(jù)示例
- PHP YII框架開(kāi)發(fā)小技巧之模型(models)中rules自定義驗(yàn)證規(guī)則
- PHP的Yii框架中Model模型的學(xué)習(xí)教程
- Yii框架數(shù)據(jù)模型的驗(yàn)證規(guī)則rules()被執(zhí)行的方法
- YII動(dòng)態(tài)模型(動(dòng)態(tài)表名)支持分析
- Yii框架表單模型和驗(yàn)證用法
- Yii模型操作之criteria查找數(shù)據(jù)庫(kù)的方法
- Yii數(shù)據(jù)模型中rules類(lèi)驗(yàn)證器用法分析
- yii2.0框架多模型操作示例【添加/修改/刪除】
相關(guān)文章
詳解PHP使用日期時(shí)間處理器Carbon人性化顯示時(shí)間
本篇文章主要介紹了詳解PHP使用日期時(shí)間處理器Carbon人性化顯示時(shí)間,具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08laravel結(jié)合vue添加權(quán)限的實(shí)現(xiàn)示例
本文將結(jié)合實(shí)例代碼,介紹laravel結(jié)合vue添加權(quán)限,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07thinkphp5使用phpmail發(fā)送qq郵件的實(shí)現(xiàn)過(guò)程
這篇文章主要給大家介紹了thinkphp5使用phpmail發(fā)送qq郵件的實(shí)現(xiàn)過(guò)程,文中有詳細(xì)的代碼示例供大家參考,具有一定的參考價(jià)值,感興趣的小伙伴可以自己動(dòng)手嘗試一下2023-10-10php+mongodb判斷坐標(biāo)是否在指定多邊形區(qū)域內(nèi)的實(shí)例
本篇文章主要介紹了php+mongodb判斷坐標(biāo)是否在指定多邊形區(qū)域內(nèi)的實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-10-10PHP SPL標(biāo)準(zhǔn)庫(kù)之SplFixedArray使用實(shí)例
這篇文章主要介紹了PHP SPL標(biāo)準(zhǔn)庫(kù)之SplFixedArray使用實(shí)例,SplFixedArray主要是處理數(shù)組相關(guān)的主要功能,它是固定長(zhǎng)度的,比普通的數(shù)組處理更快,需要的朋友可以參考下2015-05-05基于PHP技術(shù)開(kāi)發(fā)客服工單系統(tǒng)
這篇文章主要介紹了基于PHP技術(shù)開(kāi)發(fā)客服工單系統(tǒng),需要的朋友可以參考下2016-01-01PHP基于GD庫(kù)的縮略圖生成代碼(支持jpg,gif,png格式)
你可能會(huì)遇到這樣的問(wèn)題,在用戶(hù)上傳了一張圖片后,得到這張圖片的縮略圖,PHP可以使用GD庫(kù)生成縮略圖,那么我們來(lái)探討下,如何才能生成高質(zhì)量的縮略圖呢?2014-06-06