php无限极递归

1.数组递归
/**
 * @param $arr 数组
 * @param int $pid 父级id
 * @param int $level 级别
 * @return array 返回值
 */
function _getchildren($arr=[], $pid = 0, $level = 0)
{
    static $tree = array();
    foreach ($arr as $v) {
        if ($v['parent_id'] == $pid) {
            $v['level'] = $level;
            $tree[] = $v;
            _getchildren($arr, $v['id'], $level + 1);
        }
    }
    return $tree;
}

2.前端显示

你可能感兴趣的:(php)