1
我想從MySQL結果創建一個多維數組。這是一個父母的孩子關係。像這樣的東西。使用Laravel 5創建來自mysql數據的多維數組
$navArr = array();
$pageNav = Page::where('parent_id', 0)->orderBy('nav_order', 'asc')->get();
foreach($pageNav as $parent) {
$navArr[$parent->page_id] = $parent;
pageNavChildren = Page::where('parent_id', $parent->page_id)->orderBy('nav_order', 'asc')->get();
if($pageNavChildren) {
foreach($pageNavChildren as $child) {
$navArr[$parent->page_id]['childrens'] = array($child->page_id => $child);
}
}
}
它給了我一個數組,但數組只有最後一個孩子。我的猜測是它越過了寫在循環中。我需要一個包含所有父項的數組,然後如果父項有一個子項設置了子項,並且在它內部,我需要每個子項數組在這個項下。
嗨@ aldrin27我試過,但有以下錯誤。間接修改App \ Page的重載元素不起作用 – Scott
你可以print_r($ pageNav);'? – aldrin27
我發佈了我得到的錯誤。我無法打印數組,因爲使用Laravel它發佈了大量隱藏的字段,由於字符限制,我甚至無法將其複製並粘貼到此處,但我確實發佈了上面收到的錯誤。 – Scott