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

