如何将以下内容作为一个漂亮的格式化选择下拉列表进行响应,包括每个级别的"--"?
Array
(
[0] => stdClass Object
(
[id] => 2
[user_id] => 6
[title] => First Category
[parent_id] => 0
)
[1] => stdClass Object
(
[id] => 4
[user_id] => 6
[title] => HTML Times
[parent_id] => 0
)
[2] => stdClass Object
(
[id] => 5
[user_id] => 6
[title] => Email Ninja
[parent_id] => 0
)
[3] => stdClass Object
(
[id] => 6
[user_id] => 6
[title] => Taco Night
[parent_id] => 0
)
[4] => stdClass Object
(
[id] => 7
[user_id] => 6
[title] => SSH
[parent_id] => 0
[childs] => Array
(
[0] => stdClass Object
(
[id] => 10
[user_id] => 6
[title] => Root Commands
[parent_id] => 7
)
[1] => stdClass Object
(
[id] => 11
[user_id] => 6
[title] => Shell
[parent_id] => 7
)
[2] => stdClass Object
(
[id] => 12
[user_id] => 6
[title] => Linux
[parent_id] => 7
)
[3] => stdClass Object
(
[id] => 13
[user_id] => 6
[title] => Windows
[parent_id] => 7
)
)
)
[5] => stdClass Object
(
[id] => 8
[user_id] => 6
[title] => Dinner Tonight
[parent_id] => 0
[childs] => Array
(
[0] => stdClass Object
(
[id] => 9
[user_id] => 6
[title] => Mexican
[parent_id] => 8
[childs] => Array
(
[0] => stdClass Object
(
[id] => 14
[user_id] => 6
[title] => Tacos
[parent_id] => 9
)
)
)
)
)
)
我知道这个话题涵盖得很广,但对我来说并没有什么意义。经过两天的阅读。。。和阅读。。。和阅读。。。我终于能够从我的数据库中获取这些数据了。现在,我似乎无法让它比第一类更深入地反映出来。
感谢您的帮助和耐心。
以下是我目前如何找到父母:
$level=0;
$categories=$this->mycrate->build_categories();
echo '<select class="input-block-level">'; function RecursiveWrite($categories) { foreach ($categories as $category) { echo '<option value="'.$category->id.'">'.$category->title.'</option>'; RecursiveWrite($category->parent_id); } } RecursiveWrite($categories); echo '</select>';
function RecursiveWrite($categories) {
foreach ($categories as $category) {
echo '<option value="'.$category->id.'">'.$category->title.'</option>';
RecursiveWrite($category->childs);
}
}
RecursiveWrite($categories);
首先,递归部分需要在子元素上调用,而不是在父元素上调用。