Почему функция возвращает NULL? Если сделать дамп в функции перед словом return тогда выводится ожидаемый масив, при дампе функции tree_menu() - NULL.
<?
function tree_menu($menu, $parent = 0){
static $key_1 = 0;
static $key_2 = 0;
static $key_3 = 0;
static $key_4 = 0;
static $arResult;
switch($menu[$parent]['DEPTH_LEVEL']) {
case 1:
$key_1++;
$arResult[$key_1]=$menu[$parent];
break;
case 2:
$key_2++;
$arResult[$key_1]['CHILDRENS'][$key_2]=$menu[$parent];
break;
case 3:
$key_3++;
$arResult[$key_1]['CHILDRENS'][$key_2]['CHILDRENS'][$key_3]=$menu[$parent];
break;
case 4:
$key_4++;
$arResult[$key_1]['CHILDRENS'][$key_2]['CHILDRENS'][$key_3]['CHILDRENS'][$key_4]=$menu[$parent];
break;
}
$parent++;
if(empty($menu[$parent])){
return $arResult;
}else{
tree_menu($menu,$parent);
}
}
$a = tree_menu($arResult);
var_dump($a);
?>
Потому что возврат из функции перед var_dump()
происходит...
if(empty($menu[$parent])){
return $arResult;
}else{
tree_menu($menu,$parent); // <--- ... вот ТУТ
}
Вы в этой строке забыли return
, а функции PHP без return
возвращают по-умолчанию null
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Доброго времени суток, форумчане! У меня возникла проблема, у меня есть вот такой JSON файл:
Как записать значение переменной в сессию/куки только 1 раз без перезаписи? Обновляется страница 3 раза и прилетают 3 разных значения в cookie
какой функцией для работы с массивами можно заменить foreach в таком коде