PHP는 널리 사용되는 프로그래밍 언어이며 그 배열은 매우 중요한 데이터 구조입니다. 값이 배열에 있는지 확인해야 할 경우 PHP의 in_array() 함수를 사용할 수 있습니다. 이 기사에서는 값이 배열에 있는지 확인하기 위해 in_array() 함수와 기타 여러 메서드를 사용하는 방법을 자세히 설명합니다.
1. in_array() 함수를 사용하여 값이 배열에 있는지 확인합니다.
PHP에서 in_array() 함수는 값이 배열에 있는지 확인하는 데 가장 간단하고 일반적으로 사용되는 방법입니다. 구문은 다음과 같습니다.
in_array($value, $array, $strict);
그 중 $value는 찾을 값, $array는 찾을 배열, $strict는 선택적 매개변수입니다. , 유형 검사를 수행할지 여부를 나타냅니다.
예를 들어, 과일이 포함된 $fruits 배열이 있습니다.
$fruits = [ 'apple', 'banana', 'pear', 'orange', 'kiwi' ];
이제 "배"가 $fruits 배열에 있는지 확인하려면 다음 코드를 사용할 수 있습니다.
if (in_array('pear', $fruits)) { echo 'pear is in the array.'; } else { echo 'pear is not in the array.'; }
출력 결과는 다음과 같습니다. :
pear is in the array.
유형 검사를 수행하려면 $strict 매개변수를 true로 설정하면 됩니다. 예:
$numbers = [1, 2, 3, 4, 5]; if (in_array('1', $numbers, true)) { echo '1 is in the array.'; } else { echo '1 is not in the array.'; }
출력 결과는 다음과 같습니다.
1 is not in the array.
2. array_search() 함수를 사용하여 값이 배열에 있는지 확인합니다.
값이 배열에 있는지 확인하는 또 다른 방법은 array_search( ) 기능. 구문은 다음과 같습니다.
array_search($value, $array, $strict);
그 중 $value는 검색할 값, $array는 검색할 배열, $strict는 선택적 매개변수입니다. , 유형 검사를 수행할지 여부를 나타냅니다. 발견되면 함수는 배열에 있는 값의 키 이름을 반환하고, 발견되지 않으면 false를 반환합니다.
예를 들어, 일부 과일의 가격이 포함된 $prices 연관 배열이 있습니다.
$prices = [ 'apple' => 0.5, 'banana' => 0.3, 'pear' => 0.6, 'orange' => 0.8, 'kiwi' => 0.7 ];
이제 "바나나"의 가격이 $price 배열에 있는지 확인하려면 다음 코드를 사용할 수 있습니다.
$key = array_search(0.3, $prices); if ($key !== false) { echo 'banana exists and the price is ' . $prices['banana']; } else { echo 'banana does not exist.'; }
출력 결과는 다음과 같습니다.
banana exists and the price is 0.3
유형 검사를 수행하려면 $strict 매개변수를 true로 설정할 수 있습니다. 예:
$key = array_search('0.3', $prices, true); if ($key !== false) { echo 'banana exists but its price is in a different data type.'; } else { echo 'banana does not exist.'; }
출력 결과는 다음과 같습니다.
banana does not exist.
3. isset() 함수를 사용하여 값이 배열에 있는지 확인합니다.
또 다른 간단한 방법은 isset() 함수를 사용하여 키가 존재하는지 확인하는 것입니다. 배열에서. 예:
if (isset($prices['banana'])) { echo 'banana exists and the price is ' . $prices['banana']; } else { echo 'banana does not exist.'; }
출력 결과는 이전 예와 동일합니다. 즉:
banana exists and the price is 0.3
그러나 이 방법은 배열의 값 중 값이 존재하는지 여부를 확인할 수 없으며 키가 존재하는지 여부만 확인할 수 있습니다. 배열에서. 따라서 연관 배열이나 다차원 배열이 아닌 일반 배열에서만 작동합니다.
4. in_array() 및 array_search()의 확장 메서드를 사용하세요
in_array() 및 array_search() 함수를 직접 사용하는 것 외에도 값이 정렬. 예:
1 in_array() 함수에서 array_keys() 함수를 사용합니다.
if (in_array($value, array_keys($array))) { echo $value . ' exists in the array.'; } else { echo $value . ' does not exist in the array.'; }
이 방법의 원리는 먼저 array_keys() 함수를 사용하여 배열의 모든 키를 가져온 다음 in_array() 함수는 값이 키 목록에 있는지 확인합니다. 그러나 이 방법은 비효율적이며 배열이 큰 경우 많은 메모리와 시간을 차지합니다.
2. array_flip() 함수와 isset() 함수 사용:
if (isset(array_flip($array)[$value])) { echo $value . ' exists in the array.'; } else { echo $value . ' does not exist in the array.'; }
이 방법의 원리는 먼저 array_flip() 함수를 사용하여 배열의 키와 값을 반전시킨 다음 isset을 사용하는 것입니다. () 함수를 사용하여 값이 새 배열에 존재하는지 확인합니다. 이 방법은 더 효율적이지만 연관 배열이나 다차원 배열이 아닌 일반 배열에만 적용됩니다.
5. 요약
PHP에서는 값이 배열에 있는지 확인하는 방법이 많이 있습니다. 가장 일반적인 방법은 in_array() 함수와 array_search() 함수를 사용하는 것입니다. 유형 검사를 수행하려면 $strict 매개변수를 true로 설정해야 합니다. 또한 값이 배열에 있는지 더 잘 확인하는 데 도움이 되는 몇 가지 확장된 메서드가 있습니다. 상황에 따라 다른 방법이 필요합니다.
위 내용은 PHP에서 값이 배열에 있는지 확인하는 방법(다양한 방법에 대한 간략한 분석)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!