为了账号安全,请及时绑定邮箱和手机立即绑定

递归函数的返回结果

递归函数的返回结果

PHP
潇潇雨雨 2021-09-05 18:07:03
我得到了一个当前echo结果的递归函数。我希望这个函数返回结果并使用foreach内部标记循环它们。我知道我应该对每个数组使用某种迭代来获得我想要的结果,但失败了。目前我的代码看起来像这样(尝试迭代):public static function recursiveChildCategory($categories = array(), $depth = 0, $i = 0) {    $ca = [];    // Loop through categories    foreach($categories as $key => $category){        echo str_repeat("&nbsp;&nbsp;", $depth);        echo "<a href='".implode('/', $category['breadcrumb'])."'>{$category['title']}</a>";        echo '<br>';       $ca[$i] = [           'id' => $category['id'],           'title' => $category['title'],       ];       if(isset($category['child'])) {           // Loop           self::recursiveChildCategory($category['child'], $depth + 1, $i++);       }   }   return $ca;}和传入数组到函数:Array (     [0] => Array (         [id] => 7         [title] => Deserts         [slug] => deserts         [child] => Array (             [0] => Array (                 [id] => 8                 [title] => Space                 [slug] => space                 [child] => Array (                     [0] => Array (                         [id] =>                         [title] =>                         [slug] =>                         [child] => Array ( )                     )                 )             )         )     ) )目前它只返回第一级子类别“沙漠”,但不返回“空间”。作为期望的结果,我希望函数返回所有类别$depth和多个子类别的无限路径(与当前echo做的工作相同)。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 162 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信