尝试使用PHP多维数组创建无限级别嵌套的ulli菜单
这是我有http://codepad.org/iDoXXsLX
有像这样的数组
Array ( [0] => Array ( [NumberRenamed] => 17 [TopicName] => Products [UpperLevelNumberRenamed] => 0 ) [17] => Array ( [0] => Array ( [1] => Array ( [NumberRenamed] => 18 [TopicName] => Computers [UpperLevelNumberRenamed] => 17 ) ) ) [18] => Array ( [0] => Array ( [2] => Array ( [NumberRenamed] => 16 [TopicName] => Laptops [UpperLevelNumberRenamed] => 18 ) ) ) [16] => Array ( [0] => Array ( [4] => Array ( [NumberRenamed] => 8 [TopicName] => Dell [UpperLevelNumberRenamed] => 16 ) ) ) )
顶级项目是Products
,第一个子级别项目是Computers
,下一个子级别是Laptops
,然后再次下一个子级别Dell
对于每个子级别项目UpperLevelNumberRenamed
==到最接近的上级NumberRenamed
.
想得到这样的结果
Products Computers Laptops Dell Acer Desktops Home
试过这个
foreach( $main_topics as $k_main_topics => $v_main_topics ){ if( isset($v_main_topics['UpperLevelNumberRenamed']) and $v_main_topics['UpperLevelNumberRenamed'] == 0 ){ //print only top level topics echo $v_main_topics['TopicName']. '
'; } else{//if not top level topic foreach( $v_main_topics[0] as $k_v_main_topics_0 => $v_v_main_topics_0 ){ echo $v_v_main_topics_0['TopicName']. '
'; }//foreach( $v_main_topics[0] as $k_v_main_topics_0 => $v_v_main_topics_0 ) }//else{ }//foreach( $main_topics as $k_main_topics => $v_main_topics )
但得到这个
Products Home Computers Laptops Desktops Dell Acer
有些不对劲,但无法理解是什么.请提出建议需要纠正/更改代码的内容
尝试另一种方式
初始数组是一维数组.试图从一维获得ul li导航.
这是我做的http://codepad.org/OLtxyL4X
PHP之友评论