$mainMenu['Home'][1] = '/mult/index.php';
$mainMenu['Map'][1] = '/mult/kar.php';
$mainMenu['MapA'][2] = '/mult/kara.php';
$mainMenu['MapB'][2] = '/mult/karb.php';
$mainMenu['Contact'][1] = '/mult/sni.php';
$mainMenu['Bla'][1] = '/mult/vid.php';
Run Code Online (Sandbox Code Playgroud)
这是一个菜单,1表示主要部分,2表示子菜单.喜欢:
主页
地图
-MapA
-MapB
Contat
Bla
我知道如何使用,foreach但据我所知,它用于一维数组.我在上面的例子中要做什么?
您需要嵌套两个foreachBUT,您的数据结构没有任何内容可以轻松指示什么是子项.地图与MapA?我想人类可以解决这个问题,但你必须为你的脚本编写大量的文件来进行排序.考虑重构你的数据,使它更符合你想要实现的目标.
这是一个例子.不过,你可能想出一个更好的系统:
$mainMenu = array(
'Home' => '/mult/index.php',
'Map' => array(
'/mult/kar.php',
array(
'MapA' => '/mult/kara.php',
'MapB' => '/mult/karb.php'
)
),
'Contact' => '/mult/sni.php',
...
);
Run Code Online (Sandbox Code Playgroud)
你嵌套foreach语句; 这样的事情应该做的工作.
foreach($mainMenu as $key=>$val){
foreach($val as $k=>$v){
if($k == 2){
echo '-' . $key;
}else{
echo $key;
}
}
}
Run Code Online (Sandbox Code Playgroud)