PHP에서 키가 일치하는 배열 병합
문제 설명:
두 개의 PHP를 병합하려면 두 배열의 키-값 쌍을 유지하면서 일치하는 키가 있는 배열을 단일 배열로 만듭니다.
배열 예시:
배열 1:
<code class="php">array( [ "Camera1" => "192.168.101.71" ], [ "Camera2" => "192.168.101.72" ], [ "Camera3" => "192.168.101.74" ] )</code>
배열 2:
<code class="php">array( [ "Camera1" => "VT" ], [ "Camera2" => "UB" ], [ "Camera3" => "FX" ] )</code>
array_map을 사용한 솔루션:
<code class="php">$array1 = array( ["Camera1" => "192.168.101.71"], ["Camera2" => "192.168.101.72"], ["Camera3" => "192.168.101.74"], ); $array2 = array( ["Camera1" => "VT"], ["Camera2" => "UB"], ["Camera3" => "FX"] ); $results = array(); array_map(function($a, $b) use (&$results) { $key = current(array_keys($a)); $a[$key] = array('ip' => $a[$key]); $key = current(array_keys($b)); $b[$key] = array('name' => $b[$key]); $results += array_merge_recursive($a, $b); }, $array1, $array2); var_dump($results);</code>
출력 :
array (size=3) 'Camera1' => array (size=2) 'ip' => string '192.168.101.71' (length=14) 'name' => string 'VT' (length=2) 'Camera2' => array (size=2) 'ip' => string '192.168.101.72' (length=14) 'name' => string 'UB' (length=2) 'Camera3' => array (size=2) 'ip' => string '192.168.101.74' (length=14) 'name' => string 'FX' (length=2)
이 솔루션은 두 배열의 키-값 쌍을 보존하고 이를 단일 배열로 병합합니다. 'array_merge_recursive' 함수는 배열을 재귀적으로 병합하여 중첩된 배열을 허용하는 데 사용됩니다.
위 내용은 두 배열의 키-값 쌍을 유지하면서 키가 일치하는 두 개의 PHP 배열을 단일 배열로 병합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!