繁体   English   中英

PHP:将数据从二维数组复制到一维数组的最快方法

[英]PHP: Fastest way to copy data from two-dimensional array to one-dimensional array

我有一个巨大的二维PHP数组,具有500万行。

$t = [
  [ "id" => 1, "name" => "foo" ], [ "id" => 2, "name" => "bar" ]
];

现在,我必须将此数组的ID缩小为一维:

$o = [ 1, 2 ];

现在,我正在使用一个非常慢的foreach循环(5M条目超过100s:

foreach ($t as $v){
  array_push($o, $v['id']);
};

我尝试使用for代替。 这给了我一点时间上的优势,但仍然需要很长时间。

有更好的解决方案吗?

也许:

$o = array_column($t, 'id');

代替? 相关文档: http : //php.net/manual/en/function.array-column.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM