我似乎無法找出最好的方法來做到這一點。我有一個RecursiveIteratorIterator
。Flatten RecursiveIteratorIterator數組由兒童
$info = new RecursiveIteratorIterator(
new GroupIterator($X), # This is a class that implements RecursiveIterator
RecursiveIteratorIterator::SELF_FIRST
);
注:GroupIterator
是處理我們的自定義格式的數據
當我通過它循環,我得到正是我期待的一類。
foreach($info as $data){
echo $info->getDepth().'-'.$data."\n";
}
輸出是:
0-a
1-b
2-c
2-d
1-e
2-f
0-g
1-h
2-i
這是正確的,那麼遠。現在,我想要的是將父母和孩子變成一個單一的陣列。我想爲每個最大深度的孩子一行。我試圖得到的輸出是:
0-a 1-b 2-c
0-a 1-b 2-d
0-a 1-e 2-f
0-g 1-h 2-i
我想不出如何做到這一點。循環中的每次迭代都會給我另一行,我如何將所需的行組合到一起?
我很高興你解決了它! – ComFreek
@ComFreek:是的,我也是。 :) –