PHP는 배열에 존재하는지 확인합니다.

WBOY
풀어 주다: 2023-05-06 11:53:07
원래의
452명이 탐색했습니다.

PHP 개발에서는 배열에 요소가 존재하는지 확인해야 하는 상황이 자주 발생합니다. 이 경우 일반적으로 in_array() 함수나 array_search() 함수를 사용합니다. 아래에서는 이 두 기능의 사용법과 차이점을 자세히 소개하겠습니다.

1. in_array() 함수

in_array() 함수는 배열에 요소가 존재하는지 확인하기 위해 PHP에서 일반적으로 사용되는 함수입니다.

bool in_array(mixed $needle, array $haystack [ , bool $strict]);

그 중 $needle은 찾을 요소, $haystack은 찾을 배열, $strict는 일치 여부를 나타내며 반환 값은 Boolean 값입니다.

샘플 코드는 다음과 같습니다.

$fruits = array("apple", "banana", "orange", "tomato");

if (in_array("apple", $fruits)) {
    echo "有苹果!";
} else {
    echo "没有苹果。";
}
로그인 후 복사

출력 결과는 "사과가 있습니다!"입니다.

2. array_search() 함수

array_search() 함수는 in_array() 함수와 비슷한 기능을 갖고 있으며 배열에 요소가 존재하는지 찾는 데도 사용할 수 있습니다. in_array() 함수와 달리 array_search() 함수는 요소의 첨자를 반환하거나 false를 반환합니다.

array_search() 함수는 다음과 같이 사용됩니다:

mixed array_search(mixed $needle, array $haystack [, bool $strict]);

여기서 $needle은 찾을 요소를 나타내고, $haystack은 찾을 배열을 나타냅니다. 발견되면 $strict는 동일하게 비교할지 여부를 나타냅니다.

샘플 코드는 다음과 같습니다.

$fruits = array("apple", "banana", "orange", "tomato");

$key = array_search("orange", $fruits);

if ($key !== false) {
    echo "'orange' 的下标是: " . $key;
} else {
    echo "'orange' 不存在!";
}
로그인 후 복사

출력 결과는 "'orange'의 첨자는 2입니다."입니다.

3. in_array() 함수와 array_search() 함수의 차이점

in_array() 함수와 array_search() 함수는 배열에 요소가 있는지 확인하는 기능이 비슷하지만 여전히 다음과 같은 기능을 갖습니다. 차이점:

  1. 반환 값이 다릅니다. in_array()는 부울 값을 반환하고, array_search()는 요소의 첨자를 반환하거나 false를 반환합니다.
  2. 다른 비교 방법: in_array() 함수는 요소의 값만 비교하는 반면, array_search() 함수는 요소의 키와 값을 모두 비교할 수 있습니다.
  3. 사용 제한이 다릅니다. array_search() 함수는 1차원 배열에만 사용할 수 있고 in_array() 함수는 다차원 배열에 사용할 수 있습니다.

4 요소가 배열에 존재하는지 확인하는 다양한 방법

in_array() 함수 및 array_search() 함수 외에도 isset() 함수와 array_key_exists() 함수.

  1. isset() 함수 사용

isset() 함수를 사용하면 배열에 요소가 존재하는지 확인할 수 있습니다. 사용 방법은 다음과 같습니다.

$fruits = array("apple", "banana", "orange", "tomato");

if (isset($fruits[2])) {
    echo "'orange' 存在!";
} else {
    echo "'orange' 不存在!";
}
로그인 후 복사

출력 결과는 "'orange' presents!"입니다.

  1. array_key_exists() 함수 사용

array_key_exists() 함수를 사용하여 배열에 요소가 존재하는지 여부를 확인할 수도 있습니다. 사용 방법은 다음과 같습니다.

$fruits = array("apple", "banana", "orange", "tomato");

if (array_key_exists(2, $fruits)) {
    echo "'orange' 存在!";
} else {
    echo "'orange' 不存在!";
}
로그인 후 복사

출력 결과는 "'orange'exists! ".

배열의 값이 존재하는지 비어 있는지 확인하는 데만 사용할 수 있는 isset() 함수와 달리, array_key_exists() 함수는 배열의 키가 존재하는지 확인하는 데 사용할 수 있습니다.

결론

위의 소개를 통해 PHP 개발에서는 배열에 요소가 존재하는지 확인하는 것이 어렵지 않다는 것을 알 수 있습니다. in_array() 함수, array_search() 함수, isset() 함수를 사용할 수 있습니다. 또는 array_key_exists() 함수 및 이를 달성하는 다른 방법이 있습니다. 구체적으로 어떤 방법을 사용할 것인지, 최상의 결과를 얻으려면 다양한 상황에 따라 다양한 방법을 선택해야 합니다.

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

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!