在 PHP 中展平多維數組
在 PHP 中,展平多維數組涉及將其轉換為一維數組。這可以在不使用遞歸或引用的情況下完成,從而允許更有效率和可讀的程式碼。
一種方法是利用 array_walk_recursive() 函數,該函數遞歸地迭代數組並將指定的回調函數應用於每個元素。透過使用 PHP 5.3 中引入的新閉包語法,我們可以實現簡潔有效的解決方案。
以下程式碼片段示範如何使用此方法展平多維數組:
function flatten(array $array) { $return = array(); array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; }); return $return; }
此函數遞歸遍歷整個數組,包括巢狀元素。對於每個遇到的元素,它將其附加到 $return 數組,有效地展平結構。
需要注意的是,如果您需要維護鍵關聯,可以使用 array_walk_recursive() 並將其第二個參數設為 true在回呼函數簽章中。
以上是如何在沒有遞歸或引用的情況下在 PHP 中展平多維數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!