问题描述
$famousMeals = [
1 => ['name' => 'Currywurst mit Pommes','winner' => [2001,2003,2007,2010,2020]],2 => ['name' => 'Hähnchencrossies mit Paprikareis','winner' => [2002,2004,2008]],3 => ['name' => 'Spaghetti Bolognese','winner' => [2011,2012,2017]],4 => ['name' => 'Jägerschnitzel mit Pommes','winner' => 2019]
];
如上所述的问题。我已经尝试了一切:(
解决方法
使用array_column并将其循环
$famousMeals = [
1 => ['name' => 'Currywurst mit Pommes','winner' => [2001,2003,2007,2010,2020]],2 => ['name' => 'Hähnchencrossies mit Paprikareis','winner' => [2002,2004,2008]],3 => ['name' => 'Spaghetti Bolognese','winner' => [2011,2012,2017]],4 => ['name' => 'Jägerschnitzel mit Pommes','winner' => 2019]
];
$winners = array_column($famousMeals,'winner');
foreach($winners as $winner) {
print_r($winner);
}
,
您可以像这样使用foreach访问父数组的任何位置
<?php
$famousMeals = [
1 => ['name' => 'Currywurst mit Pommes','winner' => 2019]
];
foreach($famousMeals as $meal) {
echo "<br>";
echo "Meal: " . $meal['name'] . "\n";
echo "Winners: " . json_encode($meal['winner']);
echo "<br>";
}
请注意,位置$ meal ['winner']是一个数组,因此您必须使用json_encode来显示数据。