我在CodeIgniter (CI)工作,并尝试为下拉列表创建一组嵌套的类别项。要创建下拉框,在CI中您需要echo form_dropdown('name', $array, $selectedID)
.
这是我创建嵌套列表数组的函数:
$categoryData = array();
function list_categories($cats, $sub = ''){
foreach($cats as $cat){
//$cat['category']->id = $sub.$cat['category']->title;
$categoryData[$cat['category']->id] = $sub.$cat['category']->title;
if( sizeof($cat['children']) > 0 ){
$sub2 = str_replace('—→ ', '–', $sub);
$sub2.= '–→ ';
list_categories($cat['children'], $sub2);
}
}
}
如果我在函数内部执行一个var_dump($categoryData);
,foreach
它将list_categories()
返回嵌套集的数组。所以var_dump()
在函数内部使用时这是可以的。但我需要这样做:
<?php
list_categories($categories);
var_dump($categoryData);
?>
在这里我得到一个空数组,这是一个输出:
array (size=0)
empty
有人可以告诉我我在这里做错了什么吗?