PHP 사용자 정의 함수로 배열 교차 및 결합 기능을 확장하고, 사용자 정의 교차 함수를 사용하면 키 또는 값으로 교차점을 찾을 수 있으며, 사용자 정의 결합 함수는 키 또는 값으로 결합을 찾을 수 있습니다. 이를 통해 특정 요구 사항에 따라 어레이를 조작할 수 있는 유연성을 얻을 수 있습니다.
PHP 사용자 정의 함수를 사용하여 배열 교집합 및 합집합 확장
PHP에서 교집합과 합집합은 자주 사용되는 두 가지 데이터 조작 함수입니다. 그러나 특정 요구 사항을 충족하기 위해 기능을 확장해야 하는 경우도 있습니다. 이 튜토리얼에서는 교차 및 통합 처리를 향상시키기 위해 PHP를 사용하여 사용자 정의 함수를 만드는 방법을 안내합니다.
사용자 정의 교차점 기능
사용자 정의 교차점 기능을 사용하면 찾고자 하는 교차점의 키나 값을 지정할 수 있습니다. 생성 방법은 다음과 같습니다.
function custom_array_intersect(array $array1, array $array2, $key_or_value = 'key') { $result = []; foreach ($array1 as $key => $value) { if ($key_or_value == 'key') { if (array_key_exists($key, $array2)) { $result[$key] = $array1[$key]; } } else { if (in_array($value, $array2)) { $result[$key] = $array1[$key]; } } } return $result; }
사용자 정의 Union 함수
마찬가지로, Union을 찾으려는 키나 값을 지정할 수 있는 사용자 정의 Union 함수를 생성할 수 있습니다.
function custom_array_union(array $array1, array $array2, $key_or_value = 'key') { $result = []; foreach ($array1 as $key => $value) { $result[$key] = $array1[$key]; } foreach ($array2 as $key => $value) { if ($key_or_value == 'key') { if (!array_key_exists($key, $result)) { $result[$key] = $array2[$key]; } } else { if (!in_array($value, $result)) { $key_to_use = array_search($value, $array1); if ($key_to_use !== false) { $result[$key_to_use] = $array2[$key]; } else { $new_key = max(array_keys($result)) + 1; $result[$new_key] = $array2[$key]; } } } } return $result; }
실제 예
다음은 두 가지 사용자 정의 함수의 실제 사례입니다.
교차점 예:
$array1 = ['a' => 1, 'b' => 2, 'c' => 3]; $array2 = ['b' => 4, 'c' => 5, 'd' => 6]; $result = custom_array_intersect($array1, $array2, 'key'); print_r($result); // 输出: ['b' => 4, 'c' => 5]
Union 예:
$array1 = ['a' => 1, 'b' => 2, 'c' => 3]; $array2 = ['b' => 4, 'd' => 5, 'e' => 6]; $result = custom_array_union($array1, $array2, 'key'); print_r($result); // 输出: ['a' => 1, 'b' => 4, 'c' => 3, 'd' => 5, 'e' => 6]
위 내용은 PHP 사용자 정의 함수를 사용하여 배열 교차 및 합집합 기능 확장의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!