>  기사  >  백엔드 개발  >  PHP 2개 배열의 다른 항목

PHP 2개 배열의 다른 항목

WBOY
WBOY원래의
2023-05-05 20:55:06501검색

PHP는 매우 널리 사용되는 프로그래밍 언어이며, 데이터 유형으로 배열이 필요한 다양한 문제에 자주 직면합니다. 일반적인 질문 중 하나는 두 배열에서 서로 다른 항목을 찾는 방법입니다. 이 기사에서는 이 문제를 해결하는 세 가지 일반적인 방법을 소개합니다.

방법 1: array_diff() 함수 사용

PHP는 두 배열의 서로 다른 항목을 비교할 때 매우 편리한 함수를 제공합니다. 이 함수는 array_diff()입니다.

예를 들어 $arr1과 $arr2라는 두 개의 배열이 있습니다.

$arr1 = array('apple', 'banana', 'orange', 'pear');
$arr2 = array('apple', 'banana', 'kiwi', 'grape');

두 배열에서 서로 다른 항목을 찾으려면 다음과 같이 array_diff() 함수를 사용할 수 있습니다.

$diff = array_diff($arr1, $arr2);
print_r($diff);

출력 결과 is :

Array
(
    [2] => orange
    [3] => pear
)

방법 2: array_diff_key() 함수를 사용하세요

값 대신 배열의 키를 비교하고 싶다면 array_diff_key() 함수를 사용하여 문제를 해결할 수 있습니다.

예를 들어 $arr1과 $arr2라는 두 개의 배열이 있는데, 여기서 $arr1의 키는 'a', 'b', 'c'이고 $arr2의 키는 'a', 'd'입니다. 'e', 두 배열의 서로 다른 키를 찾으려면 다음과 같이 array_diff_key() 함수를 사용할 수 있습니다.

$arr1 = array('a'=>1, 'b'=>2, 'c'=>3);
$arr2 = array('a'=>1, 'd'=>4, 'e'=>5);
$diff = array_diff_key($arr1, $arr2);
print_r($diff);

출력 결과는 다음과 같습니다.

Array
(
    [b] => 2
    [c] => 3
)

방법 3: foreach 루프 사용

추가로 미리 정의된 함수 외에도 foreach 루프를 사용하여 두 배열의 서로 다른 항목을 비교할 수도 있습니다.

예를 들어 $arr1과 $arr2라는 두 개의 배열이 있습니다.

$arr1 = array('apple', 'banana', 'orange', 'pear');
$arr2 = array('apple', 'banana', 'kiwi', 'grape');

두 배열에서 서로 다른 항목을 찾으려면 foreach 루프를 사용하여 다음을 달성할 수 있습니다.

$diff = array();
foreach($arr1 as $val) {
    if (!in_array($val, $arr2)) {
        $diff[] = $val;
    }
}
foreach($arr2 as $val) {
    if (!in_array($val, $arr1)) {
        $diff[] = $val;
    }
}
print_r($diff);

출력 결과 is :

Array
(
    [2] => orange
    [3] => pear
    [4] => kiwi
    [5] => grape
)

요약

위는 두 개의 배열에서 서로 다른 항목을 찾는 데 일반적으로 사용되는 세 가지 방법입니다. 각 방법에는 고유한 특성과 적용 가능한 시나리오가 있으므로 실제 상황에 따라 선택해야 합니다. 어떤 방법을 사용하든 배열 비교를 수행할 때는 비교 결과의 정확성을 보장하기 위해 배열의 키와 값의 유형과 수량 등의 요소에 주의해야 합니다.

위 내용은 PHP 2개 배열의 다른 항목의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.