PHP 배열 검색 기능 사용법 요약

php中世界最好的语言
풀어 주다: 2023-03-27 07:02:02
원래의
3246명이 탐색했습니다.

이번에는 php 배열 검색 기능을 사용하는 방법을 요약해서 가져왔습니다. php 배열 검색 기능 사용 시 주의 사항은 무엇인가요?

PHP는 배열에 지정된 값이 있는지 검색합니다. 항상 foreach 루프를 사용하여 검색합니다.
더 좋은 방법은 PHP에 내장된 세 가지 배열 함수를 사용하여 지정된 값이 배열에 존재하는지 확인할 수 있습니다. 이 세 가지 배열은 in_array(), array_search(), array_key_exists()입니다.

다음은 세 가지 PHP 배열 함수의 정의와 기능을 소개합니다.

1. PHP 배열 검색 함수 in_array(value,array,type)
이 함수의 기능은 array에서 지정된 값을 검색하는 것입니다. 이 매개변수가 true로 설정된 경우, 데이터와 배열의 값이 동일한 유형, 즉 동일한지 여부를 확인합니다.

<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");
if(in_array("Glenn",$people)){
  echo "Match found";
}else{
  echo "Match not found";
}
?>
로그인 후 복사

출력:
일치 발견

두 번째, PHP 배열 검색 함수 array_key_exists(key,array)
이 함수는 지정된 키가 배열 배열에 존재하는지 확인하는 것입니다. 키가 존재하면 true를 반환하고, 그렇지 않으면 true를 반환합니다. 거짓 .

<?php
$a=array("a"=>"Dog","b"=>"Cat");
if(array_key_exists("a",$a)){
 echo "Key exists!";
}else{
 echo "Key does not exist!";
}
?>
로그인 후 복사

출력:
키가 존재합니다!

셋, PHP 배열 검색 함수 array_search(value,array,strict)
array_search() 함수는 in_array()와 동일하며 배열에서 키 값을 검색합니다. 값이 발견되면 일치하는 요소에 해당하는 키가 반환됩니다. 찾을 수 없으면 false를 반환합니다. PHP 4.2.0 이전에는 함수가 실패 시 false 대신 null을 반환했습니다. 마찬가지로 세 번째 매개변수 strict가 true로 지정되면 데이터 유형과 값이 일치하는 경우에만 해당 요소의 키 이름이 반환됩니다.

<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>5,"d"=>"5");
echo array_search("Dog",$a);
echo array_search("5",$a);
?>
로그인 후 복사

출력:
ad

실제 성능 비교 후, 데이터의 양이 1000개 미만 등 크지 않은 경우 어떤 검색 방법을 사용해도 성능 병목 현상이 발생하지 않습니다.
그러나 데이터의 양이 상대적으로 많은 경우에는 array_key_exists를 사용하는 것이 더 적합합니다.
테스트에 따르면 array_key_exist는 in_array보다 10배, 심지어 수십 배 더 효율적입니다.

이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 자료:

yii 콘솔 명령을 통해 예약된 작업을 생성하는 단계에 대한 프레임워크 자세한 설명

yii 프레임워크 양식 모델 배열 형식으로 양식을 제출하는 단계에 대한 자세한 설명

위 내용은 PHP 배열 검색 기능 사용법 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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