PHP에서 array_diff () 함수는 둘 이상의 배열을 비교하는 데 사용되며 첫 번째 배열에는 존재하지만 다른 배열에는 존재하지 않는 모든 요소가 포함 된 배열을 반환합니다. 이 기능은 한 배열에서 다른 배열에 존재하는 모든 요소를 제거해야 할 때 매우 유용합니다.
Array_Diff () 함수의 기본 구문은 다음과 같습니다.
array_diff(array $array1, array ...$arrays): array
$ array1 : 첫 번째 배열은 다른 배열과 비교됩니다.
$ 배열 : $ array1 과 비교하는 하나 이상의 배열.
이 함수는 다른 배열에 존재하지 않는 $ array1 의 모든 요소를 포함하는 배열을 반환합니다.
다음은 Array_Diff ()를 사용하여 첫 번째 배열에서 존재하지만 두 번째 배열에서는 그렇지 않은 두 배열과 리턴 요소를 비교하는 방법을 보여주는 간단한 예입니다.
<?php
$array1 = array(1, 2, 3, 4, 5);
$array2 = array(4, 5, 6, 7, 8);
$result = array_diff($array1, $array2);
print_r($result);
?>
Array
(
[0] => 1
[1] => 2
[2] => 3
)
위의 예에서는 array_diff ()는 array $ array1 에 존재하지만 $ array2 에 존재하지 않는 요소를 반환합니다. 즉, 요소 1, 2, 3은 $ array1 의 유일한 요소이며 4, 5는 $ array2 에 의해 덮어 씁니다.
사용자 정보가 포함 된 배열이 있다고 가정하고 기존 사용자를 제외해야합니다. Array_Diff ()를 사용하여이를 달성 할 수 있습니다.
<?php
$userList = array("Alice", "Bob", "Charlie", "David");
$blockedUsers = array("Charlie", "David");
$activeUsers = array_diff($userList, $blockedUsers);
print_r($activeUsers);
?>
Array
(
[0] => Alice
[1] => Bob
)
이 예에서는 차단되지 않은 사용자 만 $ ActiveUsers 어레이에 유지되며 Charlie 와 David는 제외됩니다.
비교할 여러 배열이 있으면 여러 배열을 Array_Diff () 함수로 전달할 수 있으며 결과는 첫 번째 배열에 존재하는 모든 배열에서 유일한 요소가됩니다.
<?php
$array1 = array("apple", "banana", "cherry");
$array2 = array("banana", "cherry", "date");
$array3 = array("cherry", "date", "elderberry");
$result = array_diff($array1, $array2, $array3);
print_r($result);
?>
Array
(
[0] => apple
)
이 예에서 "Apple"은 $ array1 에만 나타나고 다른 요소 "Banana" , "Cherry" , "Date"는 다른 어레이에 존재하므로 이러한 요소는 제외됩니다.
사용자가 컨텐츠를 여러 URL을 업로드하는 시스템을 개발 중이며 특정 도메인 이름에 대한 링크를 제외하려고한다고 가정 해 봅시다. Array_Diff () 를 통해이를 달성하는 데 도움을 줄 수 있습니다.
<?php
$urls = array("https://www.example.com", "https://m66.net/about", "https://www.example.com/contact", "https://m66.net/home");
$excludeUrls = array("https://www.example.com");
$filteredUrls = array_diff($urls, $excludeUrls);
print_r($filteredUrls);
?>
Array
(
[1] => https://m66.net/about
[3] => https://m66.net/home
)
이 예에서 Array_Diff ()는 도메인 이름 www.example.com 의 모든 링크를 제외하고 m66.net 도메인 이름과의 링크 만 유지합니다.
Array_Diff () 는 PHP에서 매우 실용적인 배열 비교 함수입니다. 불필요한 데이터를 필터링하거나 여러 배열을 비교하거나 실제 프로젝트에서 특정 콘텐츠를 제외하기 위해 적용하는 데 사용 되든이 기능을 사용하면 배열 데이터를 효율적으로 처리하는 데 도움이 될 수 있습니다. 기본 사용 및 애플리케이션 기술을 마스터하면 개발이 더 편안해질 것입니다.