yii2的AR中indexBy()的用法

2021-09-11 11:01:19 字數 1011 閱讀 4102

以人話的形式表達:

用->asarray()來看更爽一點。

之前

array

( [0] => array

([order_id] => gd1811220941151655

[failure_types] =>

)[1] => array

([order_id] => gd1811152028391624

[failure_types] =>

)

加了indexby(order_id)之後。

array

( [gd1811220941151655] => array

([order_id] => gd1811220941151655

[failure_types] =>

)[gd1811152028391624] => array

([order_id] => gd1811152028391624

[failure_types] =>

)

這是簡單的用法了。

來個callback的

indexby(function($row){return

$row['order_id'].$row['fault_description']
array

( [gd1811220941151655師傅你打了卡上發生的] => array

([order_id] => gd1811220941151655

[failure_types] =>

[fault_description] => 師傅你打了卡上發生的

)[gd1811152028391624剎車] => array

([order_id] => gd1811152028391624

[failure_types] =>

)

至於有什麼用,自己腦補吧,ps:玩主鍵的。

Yii2 中 indexBy 的使用詳解

在專案開發中經常會使用到一些特殊的值作為陣列的索引,一般可以先查詢出資料後陣列迴圈拼接成所需的格式。不過yii2框架提供了一種更簡單的方法indexby 當你在呼叫all 方法時,它將返回乙個以連續的整型數值為索引的陣列。而有時候你可能希望使用乙個特定的字段或者表示式的值來作為索引結果集陣列。那麼你...

Yii2 中cookie的用法(2)

設定cookie phpsetcookie name larry time 3600 yii2 cookies add new yii web cookie name name value larry expire time 3600 建立名為 name 的cookie,賦值為 larry 並且規定...

yii2中的多表查詢

資料庫 classe表 create table classe cid int 11 not null auto increment,cname varchar 10 default null,tid int 11 default null,primary key cid key fk id cla...