> 백엔드 개발 > PHP 튜토리얼 > PHP에서 in_array 함수 사용법 소개

PHP에서 in_array 함수 사용법 소개

不言
풀어 주다: 2023-04-05 15:06:02
앞으로
3250명이 탐색했습니다.

이 글은 PHP에서 in_array 함수의 사용법을 소개합니다. 여기에는 특정 참고 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

  다음 코드가 true 또는 false를 출력할 것이라고 생각하시나요?

1 <?php
2 $data = [6,9];
3 var_dump(in_array('06',$data));
로그인 후 복사

  오늘 코드를 디버깅하던 중 in_array의 잘못된 사용으로 인해 발생하는 버그를 발견했습니다. PHP에서 배열은 매우 강력한 데이터 구조입니다. 공식에서는 많은 배열 작업 함수를 제공합니다. in_array()는 배열에 요소가 포함되어 있는지 확인하는 데 자주 사용됩니다. 그러나 함수를 사용할 때 함수의 세 번째 매개변수를 무시하면 일종의 버그가 발생할 수 있습니다.
 공식 함수 정의:

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

 needle

찾을 요소

 haystack

검색할 배열

strict

이 매개변수가 true로 설정되면 엄격한 비교 모드를 사용하여 요소를 찾습니다. 즉, 검색할 때 검색할 요소와 배열 요소의 값만 비교하는 것이 아니라, 그 유형도 비교하게 된다. 기본값은 거짓입니다.

 세 번째 매개변수를 무시하면 기사 시작 부분에 있는 질문의 출력이 true가 됩니다. 엄격한 비교가 사용되지 않기 때문에 함수는 문자열과 숫자를 처리할 때 비교를 위해 문자열을 정수/부동 소수점 유형으로 변환하려고 시도합니다. 예를 들어 '12ax'는 12로 변환됩니다. 그러면 위의 '06'이 6으로 변환되므로 출력은 true가 됩니다.
 근데 처음에는 함수에 3번째 매개변수 설정이 있다는 걸 눈치 채지 못해서 어차피 원하는 결과를 얻을 수 없었어요

위 내용은 PHP에서 in_array 함수 사용법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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