我有我想要做以下凌亂樹多維數組:PHP,將多維數組中的所有數組遞歸提取爲一個扁平「持有者」數組?
提取每個陣列,不管多遠嵌套下來把它變成一個單一的「持有人陣」,所以這(只是一個基本的例子因爲這將是很多比這更復雜的儘可能的嵌套)
$this = array[0]=> (array[1]=>('a','b'),
array[2]=>(array[3]=>('c','d')));
會變成這樣的事情,如果它改變了指數爲每個陣列,只是讓他們仍然在一個沒關係陣列,但「扁平」,因此唯一的套料位於一個主保持器陣列內
$would_become = array[holder]=>(array[1]=>('a','b'),
array[2]=>(),
array[3]=>('c','d'));
這背後的總體推理是,我有一堆嵌套的數組有一個共同的關鍵,如['filepath'],我想能夠做到像下面這樣的東西(將需要通過每個數組顯然在holder數組中,但是這顯示了爲什麼我需要這個的基本思想。
foreach ($holder_array as $holder_array) {
// as an example:
echo $holder_array['Path']
}
你能給出一個更真實的例子,看起來你的扁平化想法*可能不是最好的方法,等待進一步的細節。 – salathe 2010-08-10 11:26:59
由於遞歸,在PHP中壓扁數組是一項棘手的業務。 – Artefacto 2010-08-10 12:39:50
它爲獲取遞歸文件路徑,我使用了一個腳本來爲我做這個,但它仍然保持在一個凌亂的數組,而不是重寫整個其他腳本,這是相當長的這個解決方案相比,我認爲這會更容易,但對我來說這並不容易=),我很感謝大家對這個 – Rick 2010-08-10 18:24:10