我正在寻找在多维数组中获取特定值的最佳方法。我的数组看起来像这样。我不知道我能获得多少个数组,所以我需要在foreach中使用它。
例如我现在想从每个数组返回[event_budget] [0]值。我该如何实现?
Array
(
[0] => Array
(
[event_budget] => Array
(
[0] => Bis € 4000
)
[event_date] => Array
(
[0] => 27.10.2019
)
[event_date_timestamp] => Array
(
[0] => 1572134400
)
)
[1] => Array
(
[event_budget] => Array
(
[0] => Bis € 500
)
[event_date] => Array
(
[0] => 29.10.2019
)
[event_date_timestamp] => Array
(
[0] => 1572307200
)
)
)
答案 0 :(得分:1)
您可以通过多种方式获得所需的结果。
最基本的:
$finalArray = array();
foreach($result as $key => $value){
$finalArray[] = $value['event_budget'][0];
}
$ finalArray将具有您所需的结果。您也可以使用@rakesh提到的内容。
array_map('array_shift',array_column($a, 'event_budget'));
如果您可以控制主阵列,那就太好了。在这种情况下,您可以避免将event_budget用作数组。
如果可能的话,应这样制作:
[event_budget] =>数组 ( [0] => Bis€500 )
[event_budget] => Bis€500
希望这很有帮助。 谢谢
答案 1 :(得分:0)
开始于:
print_r(array_column($array, 'event_budget'));
但是由于event_budget
也是数组,因此您需要获取索引为0的列:
print_r(array_column(
array_column($array, 'event_budget'),
0
));
答案 2 :(得分:0)
您可以将array_map
与array_column
和array_shift
一起使用
$aa = array_map('array_shift',array_column($a, 'event_budget'));
print_r($aa);