>백엔드 개발 >PHP 문제 >PHP의 배열에 특정 값이 없는지 확인하는 방법

PHP의 배열에 특정 값이 없는지 확인하는 방법

PHPz
PHPz원래의
2023-04-25 09:09:33537검색

PHP에서는 배열에 특정 값이 포함되어 있는지 확인하는 것이 매우 쉽습니다. 일반적으로 in_array 함수를 사용하여 배열에 특정 값이 있는지 확인합니다. 그렇다면 배열에 특정 값이 없는지 확인하려면 어떻게 해야 할까요?

PHP 공식 문서에서 in_array 함수를 찾아보면 이 함수의 반환 값이 부울 값(true 또는 false)이라는 것을 알 수 있습니다. 이는 지정된 값이 배열에 있으면 true를 반환하고, 그렇지 않으면 반환합니다. 거짓. 즉, in_array 함수가 false를 반환하면 해당 값이 배열에 없다는 의미입니다. 다음 예에서 볼 수 있듯이:

$fruits = array("apple", "banana", "orange");
if (!in_array("pear", $fruits)) {
  echo "数组中没有 pear";
}

위 예에서는 과일 $fruits 배열을 만들고 in_array 함수를 사용하여 "pear" 값이 배열에 있는지 확인합니다. 존재하지 않으면 "배열에 배가 없습니다"가 출력됩니다.

in_array 함수 외에도 array_search 함수를 사용하여 특정 값이 배열에 존재하는지 확인할 수도 있습니다. array_search 함수는 배열에서 지정된 값을 검색하고, 발견되면 해당 값의 키 이름을 반환하고, 그렇지 않으면 false를 반환합니다. 따라서 array_search 함수가 false를 반환하면 지정된 값이 배열에 없다는 의미입니다. 다음 예시와 같이

$fruits = array("apple", "banana", "orange");
if (array_search("pear", $fruits) === false) {
  echo "数组中没有 pear";
}

위 예시에서도 과일 $fruits의 배열을 생성했는데, 이번에는 array_search 함수를 사용하여 배열에 "pear"라는 값이 있는지 확인합니다. in_array 함수와 달리 지정된 값이 발견되면 array_search 함수는 해당 키 이름을 반환합니다. 따라서 반환 값이 false인지 확인하려면 세 개의 등호(===)를 사용해야 합니다. 왜냐하면 반환 값이 0(즉, 배열의 첫 번째 요소의 키 이름)인 경우 if 문은 거짓으로 해석하게 되면 해당 값이 존재하는지 정확하게 판단할 수 없게 됩니다.

in_array 및 array_search 외에도 배열에 특정 값이 포함되어 있는지 확인하는 더 간단한 방법이 있는데, 그것은 array_diff 함수를 사용하는 것입니다. array_diff 함수는 배열과 배열의 차이를 계산하는 데 사용됩니다. 즉, 첫 번째 배열에는 나타나지만 후속 배열에는 나타나지 않는 값을 반환합니다. 첫 번째 배열의 모든 값이 후속 배열에 나타나면 빈 배열이 반환됩니다. 즉, array_diff 함수가 빈 결과를 반환하면 배열에 지정된 값이 포함되어 있음을 의미합니다. 반면, 결과가 비어 있지 않으면 해당 값이 배열에 존재하지 않는다는 의미입니다. 다음 예에서 볼 수 있듯이:

$fruits = array("apple", "banana", "orange");
if (count(array_diff(array("pear"), $fruits)) > 0) {
  echo "数组中没有 pear";
}

위 예에서는 array_diff 함수를 사용하여 $fruits 배열을 "pear"만 포함하는 배열과 비교합니다. 결과가 비어 있지 않으면 "배열에 배가 없습니다"가 출력됩니다.

요약하자면 in_array, array_search 또는 array_diff 함수를 사용하여 배열에 지정된 값이 포함되어 있는지 확인할 수 있습니다. 그 중 in_array, array_search 함수는 지정한 값이 배열에 존재하는지 확인하는 데 사용되고, array_diff 함수는 배열과 배열의 차이를 계산하는 데 사용됩니다. if 문과 함께 이러한 함수를 사용하면 배열에 특정 값이 포함되어 있는지 쉽게 확인할 수 있습니다.

위 내용은 PHP의 배열에 특정 값이 없는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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