Php 在while循环中查找递归级深度

Php 在while循环中查找递归级深度,php,sql,recursion,Php,Sql,Recursion,我有这个功能: function showItems($parent = 0,$level=0) { $q = 'SELECT id, bg_category, parent, url FROM products_categories WHERE parent = "'.$parent.'" ORDER BY bg_category'; $q = mysql_query($q); if(mysql_num_rows($q)) { echo '<ul id="mmenu">';

我有这个功能:

function showItems($parent = 0,$level=0) {
$q = 'SELECT id, bg_category, parent, url FROM products_categories WHERE parent = "'.$parent.'" ORDER BY bg_category';
$q = mysql_query($q);
if(mysql_num_rows($q)) {
    echo '<ul id="mmenu">';
    while($r = mysql_fetch_row($q)) {
    $level++;
        echo '<li class="'.$level.'">';
        echo '<a href="../products/'.$r[3].'">',$r[1],'</a>';
        showItems($r[0],$level + 1);
        echo '</li>';
    }
    echo '</ul>';
    }
}
函数showItems($parent=0,$level=0){
$q='从产品类别中选择id、bg_类别、父项、url,其中父项=“”.$parent.”“按bg_类别排序”;
$q=mysql\u查询($q);
if(mysql_num_行($q)){
echo'
    ; 而($r=mysql\u fetch\u row($q)){ $level++; 回显“
  • ”; 回声'; 展示项目($r[0],$level+1); 回音“
  • ”; } 回声“
”; } }
我怎样才能得到水平深度,使每一个都等于深度水平? 当它现在工作时,它会向哪个方向移动,这是循环的数量,而不是深度级别。。该功能需要如何更改?
请帮忙,谢谢

行动,我发现了问题!我不得不删除$level++;让它工作!。抱歉浪费你们的时间,谢谢

请重新措辞,我不明白你想要什么,我发现了问题!我不得不删除$level++;让它工作!。抱歉浪费你们的时间,谢谢!您可以在函数中使用静态变量,这样就不需要通过参数传播它: