重複の可能性:
関数は 1 回しか返さないのはなぜですか?
私のデータベース構造は次のようになります
id|parent|
1 | 0 |
2 | 0 |
3 | 0 |
4 | 1 |
5 | 4 |
6 | 5 |
パラメータとして id の親 (つまり、親 = 0) を取得する関数が必要です。たとえば、.. get_parent(6)== 1 を返します
この MySQL テーブルの行の「親 ID」を再帰的に取得するにはどうすればよいですか?
この関数を作ってみました
function get_parent_id($cid,$found=array())
{
array_push($found,$cid);
$sql="SELECT * FROM tbl_destinations WHERE id=$cid";
$result = mysql_query($sql) or die ($sql);
if(mysql_num_rows($result))
{
while($row = mysql_fetch_assoc($result))
{
$found[] = get_parent_id($row['parent'], $found);
}
}
return $found;
}
で電話をかけます
$fnd=get_parent_id();
$array_reverse($fnd);
$parent_root=$fnd['0'];
しかし、私の方法は間違っています。どこで私は間違えましたか?