【发布时间】:2016-09-20 05:39:59
【问题描述】:
我有一个包含多个数据的数组。现在我想从中检索数据。
这个数组存储在$restaurant_menus
数组
Array
(
[0] => Array
(
[menu_group_name] => Soup
[menu_group_cover_photo] => Array
(
[0] => 430
[1] => 431
)
[menu_group_single_menu] => Array
(
[0] => Array
(
[single_menu_name] => Miryala Rasam
[single_menu_desc] => Pepper Rasam Masala Soup
[_price] => 7.99
)
[1] => Array
(
[single_menu_name] => Mokkajonna Shorba
[single_menu_desc] => Thick sweet corn soup
[_price] => 8.99
)
)
)
)
我想从中显示餐厅菜单。菜单有一个像soup 这样的组。有几种汤。所以我想得到这样的信息:
----------
-- Soup
-- Cover Photo
|----- Single menu -- Price
|---------------------------------
|----- Miryala Rasam ---7.99
|----- Mokkajonna Shorba --- 8.99
等
-------
我一直在使用这个代码
foreach ($restaurant_menus as $restaurant_menu_names) {
array_shift($restaurant_menu_names);
foreach ($restaurant_menu_names as $restaurant_menu_name) {
foreach ($restaurant_menu_name as $restaurant_menu_items) {
foreach ($restaurant_menu_items as $restaurant_menu_item) {
print_r($restaurant_menu_item);
}
}
}
}
但显示错误:Warning: Invalid argument supplied for foreach()
当使用$restaurant_menu_items 作为参数时,它发生在第三个 foreach 循环中
【问题讨论】:
-
在 foreach() 中调用它之前,在每个步骤中使用 is_array($restaurant_menus)。发生这种情况是因为 foreach 需要一个数组作为参数而不是字符串