Diese Diskussion konzentriert sich auf das Abrufen einer hierarchischen Datenstruktur aus einer Datenbank und deren Konvertierung in ein mehrdimensionales Array eine einzelne Abfrage. Das Ziel besteht darin, ein Array zu erhalten, das die Baumstruktur der Daten darstellt.
Um eine Baumstruktur aus einer Datenbank zu extrahieren, wird üblicherweise eine Abschlusstabelle verwendet. Eine Abschlusstabelle zeichnet die Beziehungen zwischen Vorfahren und Nachkommen innerhalb einer Hierarchie auf und ermöglicht so eine effiziente Abfrage von Nachkommen.
Angesichts des Primärschlüssels eines Knotens kann die Abfrage seiner Nachkommen mithilfe von SQL erreicht werden Verwenden Sie die folgenden Schritte:
Das SQL-Ergebnis wird dann wie folgt verarbeitet:
In PHP demonstriert der folgende Code unter Verwendung des Zend Framework den Prozess:
// Get taxonomy table instance $tax = new Taxonomy(); // Fetch tree starting at Rodentia (id 180130) to a depth of 2 $tree = $tax->fetchTree(180130, 2); // Dump the array var_export($tree->toArrayDeep());
Die Ausgabe ist ein mehrdimensionales Array, das die Baumstruktur der Daten darstellt, wie zum Beispiel:
array ( 'tsn' => '180130', 'completename' => 'Rodentia', '_parent' => '179925', '_children' => [ // Child rows... ], )
Das obige ist der detaillierte Inhalt vonWie kann ich Datenbankergebnisse in ein mehrdimensionales Array konvertieren, um eine hierarchische Datenstruktur darzustellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!