Php 我的家谱上有重复的节点
我的功能是复制树上的一些节点。当我以递归方式调用该函数时。我有一个包含所有父亲、母亲、妻子、丈夫、孩子ID的数据库表。我只从他们父亲的身份证上拿走所有人。我不知道这些额外的节点是从哪里来的,我应该如何处理iePhp 我的家谱上有重复的节点,php,arrays,recursion,tree,instance,Php,Arrays,Recursion,Tree,Instance,我的功能是复制树上的一些节点。当我以递归方式调用该函数时。我有一个包含所有父亲、母亲、妻子、丈夫、孩子ID的数据库表。我只从他们父亲的身份证上拿走所有人。我不知道这些额外的节点是从哪里来的,我应该如何处理ie 您应该在发送帖子之前预览帖子。请添加所需的行为和一些示例数据真的很抱歉,先生。我正在编辑它。这就是为什么它表现得如此。现在请检查我的密码。先谢谢你 <?php function categoryTree($parent_id = 0,&$alreadyTher
您应该在发送帖子之前预览帖子。请添加所需的行为和一些示例数据真的很抱歉,先生。我正在编辑它。这就是为什么它表现得如此。现在请检查我的密码。先谢谢你
<?php
function categoryTree($parent_id = 0,&$alreadyThereArr=array())
{
$ci =& get_instance();
//$query = $ci->db->query("SELECT * FROM tbl_user WHERE father_id = $parent_id ORDER BY id ASC");
$sql="SELECT * FROM `tbl_user` WHERE father_id = '$parent_id' ORDER BY id ASC";
$query=$ci->db->query($sql);
$result=$query->result();
if(count($result) > 0)
{
echo '<ul>';
foreach($result as $key)
{
if(!in_array($key->id,$alreadyThereArr))
{
//echo 'In';
if($key->wife_id != 0)
{
//echo 'wife';
$wife=$ci->Main_M->getSingleRow('tbl_user','id',$key->wife_id);
$start='<div>
<span class="male">'.$key->name.'</span>
<span class="spacer"></span>
<span class="female">'.$wife->name.'</span>
</div>';
}
else
{
$gender=($key->gender == 'M') ? 'male' : 'female';
$start='<div><span class="'.$gender.'">'.$key->name.'</span></div>';
}
$alreadyThereArr[]=&$key->id;
echo '<li>';
echo $start;
echo '<ul>';
categoryTree($key->id, $alreadyThereArr);
echo '</ul>';
echo '</li>';
}
}
echo '</ul>';
}
//print_r($alreadyThereArr);
}
?>