在 PHP 中實現深度收集可以使用遞歸函數來實現。以下是一個簡單的示例代碼:
function deepCollect($array) {
$result = [];
foreach ($array as $key => $value) {
if (is_array($value)) {
$result = array_merge($result, deepCollect($value));
} else {
$result[] = $value;
}
}
return $result;
}
$array = [
1,
2,
[3, 4, [5, 6]],
7,
[8, [9, 10]]
];
$result = deepCollect($array);
print_r($result);
在上面的示例中,deepCollect
函數接收一個多維數組作為參數,并使用遞歸遍歷數組中的每個元素。如果元素是數組,則遞歸調用 deepCollect
函數并將結果合并到結果數組中;否則直接將元素添加到結果數組中。最終返回一個包含所有深度收集的元素的新數組。