数组助手类 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
时间: 2024-10-06 22:53:49