如何有效地將記錄數組轉換為樹結構
在這種情況下,您有一個表示層次結構的記錄數組。每筆記錄都有一個 ID、父 ID 和名稱。目標是將此陣列轉換為巢狀樹結構,其中根節點有子節點,而子節點可能有自己的子節點。
為了實現此目的,使用了一個名為 createTree 的遞歸函數。此函數採用兩個參數:對記錄數組的引用和父數組。它會迭代父數組,並針對每個父數組檢查記錄數組中是否有任何子記錄。如果存在子記錄,則遞歸呼叫createTree函數處理它們,並將結果賦值給父記錄的children屬性。
以下是一個範例:
此程式碼將輸出所需的樹狀結構。 createTree 函數遞歸地將父記錄轉換為子記錄,建立資料的分層樹表示。請注意,該函數對輸入數組的參考進行操作,允許將變更傳播回原始數組。
以上是如何有效率地將記錄數組轉換為嵌套樹結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!