array (size=1551884)
0 =>
array (size=1)
'entity_id' => string '131813' (length=6)
1 =>
array (size=1)
'entity_id' => string '213808' (length=6)
2 =>
array (size=1)
'entity_id' => string '712885' (length=6)
是否可以将其转换为单个数组,而无需使用键' entity_id'没有循环?
array
0 =>
131813
1 =>
213808
2 =>
712885
我试过这个:
call_user_func_array('array_merge', $array)
但不知何故只返回1个元素
更新:
这是来自这个问题的给定答案的基准结果:
php版本> 5.6
array_column: 0.20802903175354
foreach: 0.46231913566589
array_map: 1.021989107132
php版本> 7
array_column: 0.079965829849243
foreach: 0.15323305130005
array_map: 0.28970503807068
答案 0 :(得分:3)
array_column
也可以这样做。
$result = array_column($your_array, 'entity_id');
答案 1 :(得分:2)
您可以使用array_map
这样轻松完成此操作:
$result = array_map(function($value) {
return $value['entity_id'];
}, $originalArray);
当然你也可以使用foreach
循环:
$result = [];
foreach($originalArray AS $entity) {
$result[] = $entity['entity_id'];
}
我个人更喜欢第一个选项。
更新:接受的答案显然是最好的方法。去做!离开这里进行比较。