나는 N 레벨의 깊이가 될 수있는 다차원 배열을 가지고 있습니다. 최종 배열 (아래 예제에서 레벨 2)을 조작하고 싶습니다. 키 'a'를 찾으면 재귀 함수의 마지막 배열임을 알 수 있습니다.알 수없는 깊이의 PHP 편집 다차원 배열
는 I는 I가 재귀 함수를 작성할 수 'A'와 'B'
의 값을 사용하여 계산한다 'C'및 'C'의 값을 말하고,이 어레이에 새로운 키를 추가 할 배열에 아무런 문제가 없지만 새 키 'c'와 데이터를 최종 배열로 반환하는 방법을 잘 모르는 경우
Array
(
[level1] => Array
(
[level2_a] => Array
(
[a] => 786578
[b] => 34450
),
[level2_b] => Array
(
[a] => 786578
[b] => 34450
)
)
)
다음을 시도했지만 새로운 데이터를 반환 할 수는 없으며 단순히 원래 배열을 반환합니다.
function calculateAverages(&$arr,$key) {
if (is_array($arr)) {
if (in_array('a',array_keys($arr))) {
//add new data to this array
}else {
foreach($arr as $key => $data) {
calculateAverages($data,$key);
}
}
}
}
당신이 foreach는'에서'종료()'기능을 사용할 수 있습니다()'당신이 올바른지 –