php array_column带有不排序的索引返回错误的索引[重复]

问题描述 投票:0回答:1

我在PHP中有一个数组:

array(
  22 => array()
  23 => array()
  25 => array()
)
我正在使用arreay_column中的search_array中搜索子阵列中的列。

$index=array_search('needlehere',array_column(myarray,'columnbeingsearchedhere'))

但是Array_column不使用正确的索引,而是将其重新索引为0,1,2 ...

无论如何都可以保留正确的索引?

php arrays multidimensional-array filter
1个回答
3
投票

array_combine( array_keys($myarray), array_column($myarray,'columnbeingsearchedhere') );

eDit

Anternative,这可能会暂时抓住更多的内存(除非您不介意修改原始数组),但是总体上可能会更快一些(取决于您的数据):

$newArray = $myArray; array_walk($newArray, function(&$value) use ($columnName) { $value = $value[$columnName]; } );


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.