首頁 >後端開發 >php教程 >如何在多維數組中尋找不同的巢狀數組?

如何在多維數組中尋找不同的巢狀數組?

Susan Sarandon
Susan Sarandon原創
2024-11-16 14:19:03896瀏覽

How to Find Dissimilar Nested Arrays within Multidimensional Arrays?

在多維數組中尋找不同的巢狀數組

考慮以下兩個包含關聯資訊行的陣列:

我們的任務是識別並傳回$pageids 中存在但$parentpage 中不存在的關聯行。然而,在這些陣列的第一層使用 array_diff_assoc() 並不能提供所需的結果。

為了克服這個挑戰,我們可以利用 array_map() 和 serialize() 函數的組合。這種方法將每個子數組轉換為字串表示,有效地扁平化多維結構。

  1. array_map('serialize', $pageids):將 $pageids 中的每個子陣列轉換為表示其結構的字串。
  2. array_map('serialize', $parentpage):$parentpage 的過程相同。
  3. array_diff():比較字串表示形式並傳回差異數組。
  4. array_map('unserialize', ...):將字串差異轉換回子陣列以恢復所需的結構。

產生的 $pageWithNoChildren 陣列包含來自的子陣列$parentpage 中不存在的 $pageid:

以上是如何在多維數組中尋找不同的巢狀數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn