0

以下は私のSQLテーブルです

id   parent_id

1      0
2      0
3      1
4      1
5      3
6      5

以下のようにn階層の階層関係を配列で表示したい

array
{
  1
    sub{
         3
           sub{
               5
           }
         4
        }
 }

等々

PHPでこれを行うにはどうすればよいですか

4

1 に答える 1

1

まず、親IDが0のすべてのルートカテゴリを選択し、それらのIDをこの再帰関数に渡します

function getChildCats($catId)
{
    $sql = "select * from categories where parent_id = $cateID";
    $res = mysql_query($sql);
    $raws[];  
    while($raw = mysql_fetch_assoc($res))
    {
        $raw['sub'] =  getChildCats($raw['id'])
        $raws[] = $raw;
    }
    return $raws;
}
于 2012-07-25T13:48:53.457 に答える