개발자로서 우리는 종종 배열을 처리하고 조작해야 합니다. 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!