码迷,mamicode.com
首页 > 编程语言 > 详细

Yii2 数组助手类arrayHelper

时间:2017-12-08 21:06:46      阅读:725      评论:0      收藏:0      [点我收藏+]

标签:获取值   class   name   一个   静态方法   .com   www   map   ddd   

数组助手类 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

标签:获取值   class   name   一个   静态方法   .com   www   map   ddd   

原文地址:http://www.cnblogs.com/chrdai/p/8006752.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!