public function get_referred_by($refer_id)
{
$where = array('referral_id' => $refer_id);
$parent = $this->get_by($where, true);
$children = $this->db->select('referral_id')
->where('refer_id', $parent->referral_id)
->order_by('users.id desc')
->limit('2')
->get('users')->result();
if(count($children) > 1)
{
for($i = 0; $i<count($children); $i++)
{
$parent = $this->get_referred_by($children[$i]->referral_id);
}
}
return $parent;
}
问题在于,使用该代码,我可以跳过下线以找到下一个空闲的插槽,但是不必先跨下线检查下一个用户是否有空闲插槽,而是将系统卡在一个上树。例如, 用户A加入用户B和C, 然后B加入D和E, 我想要的是使用用户A'的引用ID而不是返回用户Ds的引用号,而是返回用户Cs'。请帮助
答案 0 :(得分:0)
如果您始终希望选择较早(最左边)的孩子,则无需遍历这些孩子,只需选择第一个孩子即可:
if(count($children) > 1)
{
$parent = $parent = $this->get_referred_by($children[0]->referral_id);
}