Menjana Tatasusunan Berbilang Dimensi daripada Hasil Pangkalan Data Menggunakan Fungsi Rekursif
Untuk menjana tatasusunan bersarang yang mewakili data hierarki seperti halaman atau kategori, fungsi rekursif sering bekerja. Matlamatnya ialah untuk mengambil tatasusunan rata rekod pangkalan data dan mengubahnya menjadi tatasusunan berstruktur yang mencerminkan perhubungan ibu bapa-anak.
Fungsi Rekursif untuk Pembinaan Pokok
Perkara berikut fungsi, buildTree, mencapai tugas ini:
def buildTree(elements, parentId=0): branch = [] for element in elements: if element['parent_id'] == parentId: children = buildTree(elements, element['id']) if children: element['children'] = children branch.append(element) return branch
Bagaimana Ia Berfungsi
Contoh Penggunaan
Untuk memproses rekod pangkalan data anda menjadi pepohon hierarki, gunakan:
tree = buildTree(database_result)
Pembolehubah pokok kini akan mengandungi tatasusunan bersarang yang mewakili struktur hierarki halaman atau kategori.
Atas ialah kandungan terperinci Bagaimanakah Fungsi Rekursif Membina Susunan Berbilang Dimensi daripada Hasil Pangkalan Data Rata?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!