PHP에서 두 배열 비교하기

Olorunfemi Akinlua 2023년1월30일
  1. ==!= 연산자를 사용하여 PHP에서 두 배열 비교
  2. ===!== 연산자를 사용하여 PHP에서 두 배열 비교
  3. PHP에서 순서가 중요하지 않을 때 sort() 함수를 사용하여 두 배열 비교
  4. array_diff() 함수를 사용하여 두 배열을 비교하고 PHP에서 차이 반환
  5. array_intersect() 함수를 사용하여 두 배열을 비교하고 PHP에서 일치 항목 반환
PHP에서 두 배열 비교하기

모든 종류의 연산은 복잡성이 다른 배열로 수행되며 비교 연산도 다르지 않습니다. 두 값을 비교할 때 두 값이 얼마나 유사하거나 유사하지 않은지 이해하려고 합니다.

숫자(정수 및 부동 소수점), 문자 및 문자열을 사용하면 간단할 수 있습니다. 그러나 배열을 사용하면 약간 복잡해질 수 있습니다.

쉽기 때문에 걱정하지 마십시오. 사용할 수 있는 다른 연산자가 있습니다. 비교가 엄격하든 그렇지 않든 연산자가 있습니다.

이 기사에서는 두 개의 배열을 쉽게 비교할 수 있도록 하는 네 가지 연산자와 세 가지 함수와 훌륭한 예제를 통해 이를 수행하는 방법에 대해 알아볼 것입니다.

==!= 연산자를 사용하여 PHP에서 두 배열 비교

첫 번째 연산자는 == 연산자입니다. 이는 항등 연산자이며 이 연산자로 두 배열을 비교할 때 첫 번째 배열이 두 번째 배열과 같은지 여부를 알고자 합니다.

비교 연산은 두 값 간의 유사점 또는 유사점을 찾는 데 중점을 둡니다. 따라서 == 연산자를 사용하면 부울 응답을 얻을 수 있습니다. 여기서 TRUE는 유사성을 나타내고 FALSE는 비유사성을 나타냅니다.

여기에서 코드는 == 연산자를 사용하여 두 배열을 비교합니다.

<?php

$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array(5, 2.45, 'hello', 3.56, 4);

// Check for equality
if ($arr1 == $arr2)
    echo "Similar Arrays";
else
    echo "Not Similar Arrays";

?>

출력:

Not Similar Arrays

부등식 연산자인 != 연산자를 사용할 수 있습니다. 이 연산자로 두 배열을 비교할 때 첫 번째 배열이 두 번째 배열과 같지 않은지 여부를 알고자 합니다.

TRUE는 비유사성을 나타내고 FALSE는 유사성을 나타내는 부울 응답을 해제합니다.

<?php

$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array(5, 2.45, 'hello', 3.56, 4);

// Check for inequality
if ($arr1 != $arr2)
    echo "Not Similar Arrays";
else
    echo "Similar Arrays";

?>

출력:

Not Similar Arrays

이 두 연산자는 연관 및 다차원 배열과 함께 작동하며 키가 아닌 값만 비교합니다.

===!== 연산자를 사용하여 PHP에서 두 배열 비교

== 연산자와 유사하게 === 연산자는 유사성을 위해 두 값을 비교할 수 있습니다. 그러나 == 연산자는 연관 배열의 컨텍스트에서 첫 번째 배열과 두 번째 배열에 동일한 키/값 쌍이 있는 경우 TRUE를 반환합니다.

그러나 ===는 첫 번째 배열과 두 번째 배열에 동일한 순서와 유형의 동일한 키/값 쌍이 있는 경우 TRUE를 반환합니다.

이전 섹션에서 동일한 코드를 사용하여 일부 유형을 변경하고 ===== 연산자를 모두 사용합니다.

<?php

$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array('4', '5', 'hello', '2.45', '3.56');

// Check for equality
if ($arr1 == $arr2)
    echo "Similar Arrays";
else
    echo "Not Similar Arrays";

?>

출력:

Similar Arrays

=== 연산자를 사용할 때

<?php

$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array('4', '5', 'hello', '2.45', '3.56');

// Check for equality
if ($arr1 === $arr2)
    echo "Similar Arrays";
else
    echo "Not Similar Arrays";

?>

연관 배열과 함께 사용할 때 동일한 동작을 볼 수 있습니다. 아래 코드에서는 키가 아닌 값으로 두 배열을 비교할 것입니다.

<?php

$arr1 = array("first" => 4, "second" => 5, "type" => 'hello');
$arr2 = array("one" => '4', "two" => '5', "third" => 'hello', );

// Check for equality
if ($arr1 === $arr2)
    echo "Similar Arrays";
else
    echo "Not Similar Arrays";

?>

출력:

Not Similar Arrays

PHP에서 순서가 중요하지 않을 때 sort() 함수를 사용하여 두 배열 비교

요소의 순서가 중요하지 않은 경우 sort() 함수를 사용하여 두 배열을 비교할 수 있습니다. 따라서 두 배열에 sort() 함수를 적용한 다음 정렬된 배열이 같은지 비교합니다.

<?php

$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array(5, 2.45, 'hello', 3.56, 4);

// Sort the array elements
sort($arr1);
sort($arr2);

// Check for equality
if ($arr1 == $arr2)
    echo "Both arrays are same, when sorted";
else
    echo "Both arrays are not same, even when sorted";

?>

출력:

Both arrays are same, when sorted

array_diff() 함수를 사용하여 두 배열을 비교하고 PHP에서 차이 반환

두 배열을 비교하고 두 배열 사이의 차이를 반환할 수 있으며 그렇게 하려면 array_diff() 함수를 사용합니다. 이 함수를 사용하여 두 배열을 비교하고 두 번째 배열에 없는 첫 번째 배열의 요소를 포함하는 반환 배열을 기대할 수 있습니다.

<?php

$first = array("12", 34, true, 45, 67);
$second = array("12", 21, 89, 45);

print_r(array_diff($first, $second));

?>

출력:

Array
(
    [1]    34
    [2]    1
    [4]    67
)
   true

array_diff() 함수에 배열을 배치하는 순서를 알아야 배열을 반환하는 영향을 받습니다. 동일한 코드로 배열의 순서를 변경하면 아래와 같은 결과가 출력됩니다.

Array
(
    [1]    21
    [2]    89
)
   true

차이가 없으면 코드는 빈 배열을 반환합니다.

array_intersect() 함수를 사용하여 두 배열을 비교하고 PHP에서 일치 항목 반환

array_intersect() 함수를 사용하면 두 배열을 비교하고 두 요소에 모두 존재하는 요소를 반환할 수 있습니다. 이전 섹션에서 동일한 두 어레이를 사용하여 반환 어레이에서 1245를 찾을 수 있습니다.

<?php

$first = array("12", 34, true, 45, 67);
$second = array("12", 21, 89, 45);

print_r(array_intersect($first, $second));

?>

출력:

Array
(
    [0]    12
    [3]    45
)
   true
Olorunfemi Akinlua avatar Olorunfemi Akinlua avatar

Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.

LinkedIn

관련 문장 - PHP Array