PHP는 배열이 있는지 감지합니다.

WBOY
풀어 주다: 2023-05-06 09:30:11
원래의
913명이 탐색했습니다.

개발자로서 우리는 종종 배열을 처리하고 조작해야 합니다. PHP에서는 특정 값이 배열에 존재하는지 확인하는 것이 자주 발생하는 작업입니다.

PHP에는 배열에 특정 값이 포함되어 있는지 확인하는 여러 가지 방법이 있습니다. 이 기사에서는 일반적으로 사용되는 몇 가지 방법을 소개합니다.

1. in_array() 함수
in_array()는 배열에 값이 있는지 확인하는 데 사용되는 PHP 내장 함수 중 하나입니다. 구문은 다음과 같습니다:

bool in_array ( 혼합 $needle , array $haystack [, bool $strict = FALSE ] )

이 함수에는 찾을 값(바늘)과 찾을 배열인 세 개의 매개 변수가 있습니다. 발견됨(haystack ) 및 선택적 bool 유형 매개변수 strict. 그 중 needle과 haystack이 반드시 전달되어야 하며, strict의 기본값은 false입니다.

찾을 값 needle이 찾을 배열 haystack에 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 예는 다음과 같습니다.

$fruits = array("apple", "banana", "orange");
if (in_array("apple", $fruits)) {

echo "找到了 apple!";
로그인 후 복사

}

위 예에서, $fruits는 여러 과일 이름을 포함하는 배열이며 in_array() 함수는 "apple" 문자열이 포함되어 있는지 확인합니다. 배열에 "apple"이 포함되어 있으므로 출력은 "Applefound!"입니다.

2. array_search() 함수
array_search() 함수는 in_array()와 유사하며 값이 배열에 있는지 확인하는 데에도 사용됩니다. 차이점은 bool 형식의 결과를 반환하는 대신, 찾은 키 이름(key)을 반환한다는 점입니다. 구문은 다음과 같습니다:

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

이 함수에는 세 개의 매개 변수가 있습니다. 여기서 needle은 찾을 값이고 haystack은 찾을 배열입니다. found 및 strict 매개변수는 해당 유형이 활성화되어 있는지 여부를 엄격하게 비교합니다.

찾고자 하는 배열 haystack에 찾으려는 값 needle이 있으면 해당 값에 해당하는 키 이름을 반환하고, 그렇지 않으면 false를 반환합니다. 예는 다음과 같습니다.

$casual_fruits = array("apple", "banana", "orange");
$key = array_search("banana", $casual_fruits);
if ($key) {

echo "banana 在数组中的键名是 " . $key;
로그인 후 복사

}

위의 예에서 $casual_fruits 배열에는 여러 가지 이국적인 과일 이름이 포함되어 있습니다. array_search() 함수는 "banana" 값이 포함되어 있는지 확인한 후 "1"을 반환하고 다음을 통해 "banana in the array"를 출력합니다. echo. 의 키 이름은 1"입니다.

3. in_array()와 array_search() 함수의 차이점
in_array()와 array_search() 함수는 모두 배열에 특정 값이 포함되어 있는지 확인하는 데 사용되지만 반환 값은 다르며 적용 가능한 시나리오는 다음과 같습니다. 또한 다르다.

in_array()는 bool 유형 값을 반환하는데, 이는 일반적으로 배열에서의 위치를 ​​알지 못한 채 값이 존재하는지 여부를 확인하는 데 사용됩니다. Array_search()는 키 이름을 반환합니다. 이 이름은 일반적으로 값이 존재하는지 확인하는 데 사용되며 배열에서 해당 위치를 알아야 합니다.

결과의 존재에만 관심이 있는 경우 in_array() 함수를 사용하고, 배열에서 값의 위치를 ​​가져와야 하는 경우 array_search() 함수를 사용하세요.

4. array_key_exists() 함수
배열에 값이 있는지 확인하는 것 외에도 때로는 특정 키 이름이 있는지 확인해야 할 때도 있습니다. 이때 PHP 내장 함수 array_key_exists()를 사용해야 합니다. 구문은 다음과 같습니다.

bool array_key_exists (혼합 $key, array $array)

이 함수에는 두 개의 매개 변수가 있으며, 여기서 key 매개 변수는 찾을 키 이름이고 array 매개 변수는 찾을 배열입니다.

키가 배열에 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 예는 다음과 같습니다.

$arr = array("a" => "apple", "b" => "banana");
if (array_key_exists("a", $arr)) {

echo "键名 a 存在于该数组中。";
로그인 후 복사

}

위의 예제 코드에서는 여러 키-값 쌍을 포함하는 배열을 만들었습니다. 키 이름 "a"가 존재하는지 확인하고, 존재하므로 "이 배열에 키 이름 a가 있습니다."를 출력합니다.

5.isset() 함수
array_key_exists() 함수와 다르게 isset() 함수는 키 이름이 있는지 확인할 수 있을 뿐만 아니라, 키 이름에 해당하는 값이 있는지도 확인할 수 있습니다. 구문은 다음과 같습니다.

bool isset (mixed $var [, Mixed $... ] )

이 함수는 여러 매개변수를 허용할 수 있으며, 여기서 각 매개변수는 변수이거나 배열의 키 이름일 수 있습니다. 매개변수가 존재하고 해당 값이 NULL이 아니면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

예는 다음과 같습니다.

$arr = array("a" => "apple", "b" => "banana");
if (isset($arr["a"])) {

echo "键名 a 存在于该数组中,并且它的值是 " . $arr["a"];
로그인 후 복사

}

위 예제 코드에서는 "a" 키 이름을 확인하기 위해 isset() 함수를 사용했습니다. 키 이름이 존재하면 키 이름에 해당하는 값이 출력됩니다.

요약
PHP에서 배열에 특정 값이 포함되어 있는지 확인하려면 in_array(), array_search(), array_key_exists() 및 isset() 함수를 사용할 수 있습니다. 그 중 in_array()와 array_search()는 주로 값이 존재하는지 확인하는 데 사용되고, array_key_exists()와 isset() 함수는 키 이름이 있는지 확인하는 데 주로 사용됩니다.

배열에 값이 존재하는지 확인하고 싶다면 in_array() 함수를 사용하세요. 배열에 있는 값의 키 이름을 얻으려면 array_search()를 사용할 수 있습니다. 배열에 키 이름이 있는지 확인하려면 array_key_exists() 함수를 사용하고, 키 이름과 해당 값이 동시에 존재하는지 확인하려면 isset() 함수를 사용하면 됩니다.

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

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