この関数を使用して UL リストを表示しています。
function getList($arResult){
$diff = 0;
foreach($arResult as $result){
if($lastlevel != $result[depth]){
if($lastlevel < $result[depth]){
$html .= "<ul>\n";
$diff++;
}
else {
$html .= "</li>\n</ul>\n</li>\n";
$diff--;
}
}
else
$html .= "</li>\n";
$html .= "<li>$result[cat_name]";
$lastlevel = $result[depth];
}
$html .= str_repeat("</li>\n</ul>\n", $diff);
return $html;
}
には、次の$arResult
ようなツリーが含まれています。
Electronics
TV
Video
Old Movies
New Movies
Hollywood
Old hollywood
New HollyWood
Rotten Hollywood
Other Movies
Mobile
Nokia
Apple
Micromax
Laptop
Other
上記の関数は下Electronics->Tv
にすべてを出力しますが、実際には下Electronics
にあるはずTV, Video, Mobile Laptop, Other
です..
この関数はどういうわけかul li
間違ったモードになっています。
配列ダンプは次のとおりです。
array(10) {
[0]=>
array(6) {
["cat_ID"]=>
string(3) "197"
["cat_name"]=>
string(13) "Student Corner"
["cat_nicename"]=>
string(13) "student-corder"
["parent"]=>
string(1) "0"
["post_count"]=>
string(1) "0"
["depth"]=>
string(1) "0"
}
[1]=>
array(6) {
["cat_ID"]=>
string(3) "198"
["cat_name"]=>
string(6) "GujCET"
["cat_nicename"]=>
string(13) "gujcet-gujrat"
["parent"]=>
string(3) "197"
["post_count"]=>
string(1) "0"
["depth"]=>
string(1) "1"
}
[2]=>
array(6) {
["cat_ID"]=>
string(3) "199"
["cat_name"]=>
string(13) "Sample Papers"
["cat_nicename"]=>
string(20) "sample-papers-gujcet"
["parent"]=>
string(3) "198"
["post_count"]=>
string(1) "1"
["depth"]=>
string(1) "2"
}
[3]=>
array(6) {
["cat_ID"]=>
string(3) "200"
["cat_name"]=>
string(8) "Syllabus"
["cat_nicename"]=>
string(15) "syllabus-gujcet"
["parent"]=>
string(3) "198"
["post_count"]=>
string(1) "8"
["depth"]=>
string(1) "2"
}
[4]=>
array(6) {
["cat_ID"]=>
string(3) "201"
["cat_name"]=>
string(4) "News"
["cat_nicename"]=>
string(11) "news-gujrat"
["parent"]=>
string(3) "197"
["post_count"]=>
string(1) "1"
["depth"]=>
string(1) "1"
}
[5]=>
array(6) {
["cat_ID"]=>
string(3) "202"
["cat_name"]=>
string(13) "Question Bank"
["cat_nicename"]=>
string(20) "question-bank-gujrat"
["parent"]=>
string(3) "197"
["post_count"]=>
string(1) "0"
["depth"]=>
string(1) "1"
}
[6]=>
array(6) {
["cat_ID"]=>
string(3) "203"
["cat_name"]=>
string(7) "Class X"
["cat_nicename"]=>
string(28) "class-x-gujrat-question-bank"
["parent"]=>
string(3) "202"
["post_count"]=>
string(1) "2"
["depth"]=>
string(1) "2"
}
[7]=>
array(6) {
["cat_ID"]=>
string(3) "204"
["cat_name"]=>
string(9) "Class XII"
["cat_nicename"]=>
string(30) "class-xii-gujrat-question-bank"
["parent"]=>
string(3) "202"
["post_count"]=>
string(1) "4"
["depth"]=>
string(1) "2"
}
[8]=>
array(6) {
["cat_ID"]=>
string(3) "205"
["cat_name"]=>
string(7) "Results"
["cat_nicename"]=>
string(15) "results-gujarat"
["parent"]=>
string(3) "197"
["post_count"]=>
string(1) "1"
["depth"]=>
string(1) "1"
}
[9]=>
array(6) {
["cat_ID"]=>
string(3) "206"
["cat_name"]=>
string(10) "About GSEB"
["cat_nicename"]=>
string(10) "about-gseb"
["parent"]=>
string(3) "197"
["post_count"]=>
string(1) "1"
["depth"]=>
string(1) "1"
}
}