function doSomething($config = null) {
$default = [
'name' => 'Chan',
'age' => 36
];
if ($config !== null) {
$default = array_merge($default, $config);
}
var_dump($default);
}
doSomething(); // This one get name is chan and age is 36
doSomething(['age' => 10]); // This one get name is chan and age is 10
일부 구성 매개 변수를 함수에 전달하면 array_merge를 부분적으로 업데이트 할 수 있지만 하위 배열에서는 작동하지 않습니다.부분 배열을 부분적으로 바꾸는 방법
function doSomething($config = null) {
$default = [
'name' => 'Chan',
'age' => 36,
'sub' => [
'a' => 1,
'b' => 2
]
];
if ($config !== null) {
$default = array_merge($default, $config);
}
var_dump($default);
}
doSomething(); // This one sub is ['a' => 1, 'b' => 2]
doSomething(['sub' => ['a' => 3]]); // This one sub is ['a' => 3]
부분적으로 어떻게 구성을 바꿉니 까?
무엇을 당신이 뜻'하지만 subarray' 작동하지 않습니다? 당신의 코드는'b'가 제거 된'sub = [ 'a'=> 3 ''을 반환하고,'b'를 유지하겠습니까? –