sql >> Databasteknik >  >> RDS >> Mysql

php display multilevel treenode meny

Det beror på att du fortfarande har kategorierna i arrayen när du redan har tilldelat dem. Vad du kan göra är att göra funktionen där du skickar argumentet som en referens, och i foreach-slingan för att ha förmågan att rensa arrayen från den redan tilldelade kategorin. Enkel implementering nedan.

function getChildren(&$rows, $p = 0) {
    $r = array();
    foreach($rows as $row_id => $row) {
        if ($row['parent_node']==$p) {
            $r[$row['product_category_code']] = getChildren($rows, $row['product_category_code']);
            unset($rows[$row_id]);
        }
    }
    return $r;
}



  1. Övergång från mysql till PDO

  2. Hur avrundar man till närmaste X minuter med PL/pgSQL?

  3. Varför är LEFT JOIN långsammare än INNER JOIN?

  4. Hur man skickar namnet på en ingång genom GET-förfrågan i PHP