如何从此函数返回最后一次更改parrNum

时间:2017-04-14 19:26:21

标签: php recursion

如何在此递归函数中获取最后一个parrNum

function findCountOfParents($arrayName,$case,$parrNum=0)
{   
    foreach ($arrayName as $key) 
    {

        if ($case==$key['ID'] && $key['parent_id']!=0) 
        {
            $p_id = $key['parent_id'];
            $parrNum ++;
            findCountOfParents($arrayName,$p_id,$parrNum);
        }   
    }
    return $parrNum;
}

1 个答案:

答案 0 :(得分:1)

您需要将递归调用的返回值赋给变量。

function findCountOfParents($arrayName,$case,$parrNum=0)
{   
    foreach ($arrayName as $key) 
    {

        if ($case==$key['ID'] && $key['parent_id']!=0) 
        {
            $p_id = $key['parent_id'];
            $parrNum = findCountOfParents($arrayName,$p_id,$parrNum + 1);
        }   
    }
    return $parrNum;
}