欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

数组纵向切片,有内置函数吗

程序员文章站 2022-05-01 18:45:03
...
一个数组,有很多键,key1, key2, ...
我想根据一个key 来生成一个新的数组, 就是抽取特定键的所有值组成一个数组.
PHP里有内置函数吗?
这个很常用. 我感觉应该有内置方法.
就是针对数组的一个键,纵向切片.

就是实现以下功能

if(count($arr) > 0) {
foreach($arr as $v) {
array_push($newArr, $v['key1']);
}
}

有内置方法吗


回复讨论(解决方案)

就是针对一个键, 然后把这个键下的值都取出来,组成一个新数组

显然你指的是二维数组了
php 的数组是巢状的,并不是传统意义的数组。所以不可能预知你的操作而内置函数
只有自己遍历解决

一般情况下,数组的来源是数据库查询
在读取查询数据时就已经构造好了需要的数组,因此也没有必要对数组做转置处理

如果想使代码优雅易读一些,可以使用SPL提供的迭代器
但效率不一定会比自写一个遍历快

遍历一下就出来了,就几行代码,也不复杂。