我有這樣的陣列:PHP拼合多維數組轉換成字符串
$input_array = array(
'one' => array(
'two' => '3',
'four' => array(5,6,7)
),
'eight' => array(
'nine' => array(
'ten' => '11'
)
)
);
我所要的輸出是:
one/two:3
one/four/0:5
one/four/1:6
one/four/2:7
eight/nine/ten:11
我已成功地使該功能/代碼:
function flatten($array) {
if (is_array($array)) {
//get the key and value pair of the array
foreach ($array as $key => $value) {
if (is_array($value)) {
echo $key.'/';
} else {
echo $key.":".$value."<br/>\n";
}
flatten($value);
}
} else {
return false;
}
}
flatten($input_array);
目前輸出:
one/two:3
four/0:5
1:6
2:7
eight/nine/ten:11
第一行和最後一行都是正確的,但在中間不是我想要的輸出,我知道我很近,只需要更多的修改。任何人都可以幫忙謝謝!
我知道我很近,謝謝你!沒有想到添加另一個變量,所以我可以存儲舊的密鑰,我實際上正在做它,但沒有添加前綴的功能,但在循環內,它輸出錯誤!標記爲解決方案! – Knide
你不能收集沒有收集,因爲你得到一個關鍵一次循環,但需要多次回聲它的後代葉項目。很高興你幫忙。祝你好運! – splash58