gpt4 book ai didi

php - 获取树中节点的总数

转载 作者:行者123 更新时间:2023-11-29 18:01:25 28 4
gpt4 key购买 nike

我正在创建一个简单的联盟系统(最多 5 级)。所以基本上数据库有这样的结构:

enter image description here

aff level”列只是额外的东西,以便我知道我列出的是正确的。

我已成功列出(以项目符号格式)每个代理的父级和子级。下面是我的代码:

function list_current_agents($aff_parent_id, $aff_level){
$max_level = 5;

if($aff_level <= 5)
{
$query = "SELECT aff_id, agent_code FROM affiliate WHERE aff_parent_id = '$aff_parent_id' AND aff_level = '$aff_level'";
$result = db_query($query);
$row = $result-> fetch_object();
if($result-> num_rows > 0)
{
echo '<ul>';
do{
$aff_id = $row-> aff_id;
$agent_code = $row-> agent_code;

echo '<li>';
echo $aff_id .' - '.$agent_code . ' - (level '.$aff_level.')';
echo '</li>';

$aff_level = $aff_level+1;

if($aff_level <= 5)
{
list_current_agents($aff_id, $aff_level+1);
}
}while($row = $result-> fetch_object());
echo '</ul>';
}
}
return $count;

}

输出将如下所示:

enter image description here

现在,如果我选择其中一个父代理,我想在下面列出 child 的总数。例如,如果我选择:

  1. 代理1

    • child 总数:8
  2. 代理3

    • child 总数:3

我已经尝试了任何我能想到的方法,但无法解决逻辑。非常感谢任何帮助。

提前致谢。

最佳答案

创建一个实际的树数据结构,这样就可以很容易地计算子节点的数量。

或者您可以使用one of the many available on GithubThis one is even made for you specific database structure.

关于php - 获取树中节点的总数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48293300/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com