1. 程式人生 > >Yii2 數組助手類arrayHelper

Yii2 數組助手類arrayHelper

pan color 鍵值 blank 對數 map arr strong 維數

數組助手類 ArrayHelper

1、什麽是數組助手類

Yii 數組助手類提供了額外的靜態方法,讓你更高效的處理數組。

a、獲取值(getValue)

class User
{
  public $name = ‘Alex‘;
}
$array = [   ‘foo‘ => [     ‘bar‘ => new User(),ddd   ] ]

獲取 name 的值

PHP 方法:

$value = isset($array[‘foo‘][‘bar‘]->name) ? $array[‘foo‘][‘name‘] : null;

ArrayHelper

方法:

$value = ArrayHelper::getValue($array,‘foo.bar.name‘);

2、獲取列(getColumn)

從多維數組或者對象數組中獲取某列的值

$data = [
  [‘id‘ => ‘123‘,‘data‘ => ‘abc‘], // key 相當於對象的屬性名,value 相當於對象的屬性值
  [‘id‘ => ‘456‘,‘data‘ => ‘def‘],
]

ArrayHelper 方法:

$ids = ArrayHelper::getColumn($data,‘id‘);

結果:[‘123‘,‘456‘];

3、建立映射表(map)

可以使用 map 方法從一個多維數組或者對象數組中取出數據,建立一個映射表(鍵值對數組),
在 map 方法的參數列表中指定了預構建的映射表的鍵名和值。

$array = [
[‘id‘=>‘123‘,‘name‘=>‘aaa‘,‘email‘=>‘x‘],
[‘id‘=>‘456‘,‘name‘=>‘bbb‘,‘email‘=>‘y‘],
[‘id‘=>‘789‘,‘name‘=>‘ccc‘,‘email‘=>‘z‘],
]
// ArrayHelper 方法:
$result = ArrayHelper::map($array
,‘id‘,‘name‘); /* 結果: [   ‘123‘ => ‘aaa‘   ‘456‘ => ‘bbb‘   ‘789‘ => ‘ccc, ] */

註:本文為作者(44106-kangaroo) 看完魏羲教你學Yii2.0 視頻後所記,如有轉載請註明出處:http://www.cnblogs.com/chrdai/p/8006752.html

Yii2 數組助手類arrayHelper