前端技术 手机教程
程序开发 平面动画
系统软件 CMS教程
CMS教程 在线手册
资源下载 网络安全
精准搜索请尝试:精确搜索

PHP获取数组中的指定列为新数组的方法

2017-10-19 15:14:38 来源:原创 作者:周星星

有如下数组,我们的需求是提取数组中的name列组成新数组。


$users = array(
    '0' => array('id' => 1, 'name' => 'name1'),
    '1' => array('id' => 2, 'name' => 'name2'),
    '2' => array('id' => 3, 'name' => 'name3'),
    '3' => array('id' => 4, 'name' => 'name4'),
    '4' => array('id' => 5, 'name' => 'name5'),
);
//需要得到的结果:
$names = array('name1', 'name2', 'name3', 'name4', 'name5');

方法1:使用array_column()

array_column()是PHP在5.5.0版本之后新添加的一个专用函数,用于返回数组中指定的一列(本方法只能使用在php5.5以上版本)。

使用方法:


$names = array_column($users 'name');

方法2:使用array_walk()

array_walk()函数使用用户自定义函数对数组中的每个元素做回调处理

使用方法:


$names = array();
array_walk($users, function($value, $key) use (&$names ){
    $names[] = $value['name'];
});

方法3:使用array_map()

array_map()为数组的每个元素应用回调函数,array_map与array_walk的使用方法基本相同

使用方法:


$names = array();
array_map(function($value) use (&$names){
   $names[] = $value['name'];
}, $users);

方法4:使用foreach循环遍历

foreach相对上述三种方法执行效率稍低

使用方法:


$names = array();
foreach ($users as $value) {
    $names[] = $value['name'];
}
本文关键词:数组 php

相关文章

零五网,分享IT知识,国内顶级IT知识门户网站。

Copyright (C) www.02405.com, All Rights Reserved.

零五网 版权所有 辽ICP备13002105号-1