목차
in_array 함수
array_search 函数
isset 和 array_key_exists 函数
总结
백엔드 개발 PHP 문제 PHP의 배열에 지정된 문자열이 있는지 확인하는 방법

PHP의 배열에 지정된 문자열이 있는지 확인하는 방법

Apr 20, 2023 am 09:07 AM

PHP 개발자에게는 배열이 필요한 경우가 많습니다. 배열은 키-값 쌍으로 저장됩니다. 데이터 양이 많으면 요소를 찾는 데 시간이 많이 걸릴 수 있습니다. PHP에는 지정된 값이 배열에 존재하는지 확인하는 다양한 내장 함수가 있습니다. 이 기사에서는 그 중 일부와 차이점을 소개합니다.

in_array 함수

in_array() 함수는 PHP에 내장된 배열 함수 중 하나로 배열에서 지정된 값을 찾는 데 사용됩니다. 구문은 다음과 같습니다: in_array() 函数是 PHP 内置的数组函数之一,它用于在数组中查找指定的值。它的语法如下:

bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
로그인 후 복사

其中,

  • mixed $needle:要查找的值。
  • array $haystack:查找的数组。
  • bool $strict:是否使用严格模式。如果为 true,则搜索会比较数据类型,并且不同类型的值不相等。默认为 false。

该函数将返回一个布尔值,表示值是否在数组中。如果是,则返回 true,否则返回 false。

例如,以下代码演示了如何使用 in_array() 函数来查找字符串 "apple" 是否存在于数组 $fruits 中:

$fruits = array("banana", "orange", "apple", "lemon");

if (in_array("apple", $fruits)) {
    echo "找到了 apple。";
} else {
    echo "没有找到 apple。";
}
로그인 후 복사

输出结果为:

找到了 apple。
로그인 후 복사

array_search 函数

array_search() 函数也是 PHP 内置的数组函数之一,它用于在数组中查找指定的值,并返回它的键。它的语法如下:

mixed array_search ( mixed $needle , array $haystack [, bool $strict = false ] )
로그인 후 복사

其中,

  • mixed $needle:要查找的值。
  • array $haystack:查找的数组。
  • bool $strict:是否使用严格模式。如果为 true,则搜索会比较数据类型,并且不同类型的值不相等。默认为 false。

该函数将返回找到的值的键(使用数字键和关联键),如果没找到,则返回 false。

例如,以下代码演示了如何使用 array_search() 函数来查找字符串 "apple" 是否存在于数组 $fruits 中,并返回它的键:

$fruits = array("banana", "orange", "apple", "lemon");
$key = array_search("apple", $fruits);

if ($key) {
    echo "找到了 apple,它的键是 " . $key . "。";
} else {
    echo "没有找到 apple。";
}
로그인 후 복사

输出结果为:

找到了 apple,它的键是 2。
로그인 후 복사

需要注意的是,如果值对应的键是 0,则 array_search() 函数会返回 0,这可能会导致程序出现问题,因此需要进行类型判断。

isset 和 array_key_exists 函数

isset() 函数和 array_key_exists() 函数都可以用于判断数组中是否存在某个键,语法如下:

bool isset ( mixed $var [, mixed $... ] )
bool array_key_exists ( mixed $key , array $array )
로그인 후 복사

其中,

  • mixed $var/$key:要查找的键。
  • mixed $...:可选。要查找的多个键。
  • array $array:查找的数组。

两个函数都将返回一个布尔值,表示键是否存在于数组中。

需要注意的是,两个函数的差异在于,isset() 函数也可以用于判断变量是否存在,如果变量未声明,会返回 false。而 array_key_exists() 函数只能用于数组,并且不支持搜索多维数组。

例如,以下代码演示了如何使用 isset() 函数和 array_key_exists() 函数来判断键是否存在:

$fruits = array("banana" => 2, "orange" => 3, "apple" => 4, "lemon" => 1);

if (isset($fruits["banana"])) {
    echo "存在键 banana。";
} else {
    echo "不存在键 banana。";
}

if (array_key_exists("orange", $fruits)) {
    echo "存在键 orange。";
} else {
    echo "不存在键 orange。";
}
로그인 후 복사

输出结果为:

存在键 banana。存在键 orange。
로그인 후 복사

总结

本文介绍了 PHP 数组中四个用于查找元素的函数:in_array()array_search()isset()array_key_exists()。这些函数可以根据不同的需求选择使用,其中 array_search() 函数具有一定的优势,因为它返回键,而不是布尔值。但需要注意的是,要判断值是否在数组中,最好使用 in_array() 函数,因为如果键是 0,array_search()rrreee

where,

  • mixed $needle: 찾을 값.
  • array $haystack: 검색할 배열입니다.
  • bool $strict: 엄격 모드를 사용할지 여부. true인 경우 검색에서는 데이터 유형을 비교하고 다른 유형의 값이 동일하지 않습니다. 기본값은 거짓입니다.
이 함수는 값이 배열에 있는지 여부를 나타내는 부울 값을 반환합니다. 그렇다면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 🎜🎜예를 들어, 다음 코드는 in_array() 함수를 사용하여 "apple"이라는 문자열이 $fruits 배열에 존재하는지 확인하는 방법을 보여줍니다. 🎜rrreee🎜출력은 다음과 같습니다. 🎜rrreee🎜array_search function🎜🎜 array_search() 함수도 PHP에 내장된 배열 함수 중 하나입니다. 배열에서 지정된 값을 찾아 해당 키를 반환하는 데 사용됩니다. 구문은 다음과 같습니다: 🎜rrreee🎜where, 🎜
  • mixed $needle: 찾을 값.
  • array $haystack: 검색할 배열입니다.
  • bool $strict: 엄격 모드를 사용할지 여부. true인 경우 검색에서는 데이터 유형을 비교하고 다른 유형의 값이 동일하지 않습니다. 기본값은 거짓입니다.
🎜이 함수는 찾은 값의 키를 반환하거나(숫자 키와 관련 키 사용), 찾을 수 없으면 false를 반환합니다. 🎜🎜예를 들어, 다음 코드는 array_search() 함수를 사용하여 문자열 "apple"이 $fruits 배열에 있는지 확인하고 해당 키를 반환하는 방법을 보여줍니다. 🎜rrreee🎜출력은 다음과 같습니다. 🎜rrreee🎜값에 해당하는 키가 0인 경우 array_search() 함수는 0을 반환하므로 프로그램에 문제가 발생할 수 있으므로 타입 판단이 필요하다는 점에 유의하세요. 🎜🎜isset 및 array_key_exists 함수🎜🎜isset() 함수와 array_key_exists() 함수를 사용하여 배열에 키가 존재하는지 확인할 수 있습니다. 구문은 다음과 같습니다. 🎜rrreee🎜 그 중 🎜
  • $var/$key를 혼합하여 찾은 키입니다.
  • 혼합 $...: 선택사항. 여러 개의 키를 찾을 수 있습니다.
  • array $array: 검색할 배열입니다.
🎜두 함수 모두 키가 배열에 존재하는지 여부를 나타내는 부울 값을 반환합니다. 🎜🎜두 함수의 차이점은 변수가 존재하는지 확인하는 데에도 isset() 함수를 사용할 수 있다는 점입니다. 변수가 선언되지 않으면 false를 반환합니다. array_key_exists() 함수는 배열에만 사용할 수 있으며 다차원 배열 검색은 지원하지 않습니다. 🎜🎜예를 들어, 다음 코드는 isset() 함수와 array_key_exists() 함수를 사용하여 키가 존재하는지 확인하는 방법을 보여줍니다. 🎜rrreee🎜출력은 다음과 같습니다. : 🎜rrreee🎜요약 🎜🎜이 기사에서는 PHP 배열에서 요소를 찾는 네 가지 함수인 in_array(), array_search(), isset())를 소개합니다. > 및 array_key_exists(). 이러한 함수는 다양한 필요에 따라 선택하여 사용할 수 있으며, 그 중 array_search() 함수는 부울 값 대신 키를 반환하므로 확실한 장점이 있습니다. 그러나 값이 배열에 있는지 확인하려면 in_array() 함수를 사용하는 것이 좋습니다. 키가 0이면 array_search() 함수는 0을 반환합니다. 🎜🎜마지막으로, 위의 함수 중 어느 것도 다차원 배열에 적합하지 않다는 점을 언급할 가치가 있습니다. 다차원 배열의 경우 검색 작업을 완료하려면 재귀 또는 기타 알고리즘을 사용해야 합니다. 🎜

위 내용은 PHP의 배열에 지정된 문자열이 있는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

OWASP Top 10 PHP : 일반적인 취약점을 설명하고 완화하십시오. OWASP Top 10 PHP : 일반적인 취약점을 설명하고 완화하십시오. Mar 26, 2025 pm 04:13 PM

이 기사는 PHP 및 완화 전략의 OWASP Top 10 취약점에 대해 설명합니다. 주요 문제에는 PHP 응용 프로그램을 모니터링하고 보호하기위한 권장 도구가 포함 된 주입, 인증 파손 및 XSS가 포함됩니다.

PHP 8 JIT (정시) 편집 : 성능 향상 방법. PHP 8 JIT (정시) 편집 : 성능 향상 방법. Mar 25, 2025 am 10:37 AM

PHP 8의 JIT 컴파일은 자주 실행되는 코드를 컴퓨터 코드로 컴파일하여 성능을 향상시켜 계산이 많은 응용 프로그램에 도움이되고 실행 시간을 줄입니다.

PHP 보안 파일 업로드 : 파일 관련 취약점 방지. PHP 보안 파일 업로드 : 파일 관련 취약점 방지. Mar 26, 2025 pm 04:18 PM

이 기사는 코드 주입과 같은 취약점을 방지하기 위해 PHP 파일 업로드 보안에 대해 설명합니다. 파일 유형 유효성 검증, 보안 저장 및 오류 처리에 중점을 두어 응용 프로그램 보안을 향상시킵니다.

PHP 암호화 : 대칭 대 비대칭 암호화. PHP 암호화 : 대칭 대 비대칭 암호화. Mar 25, 2025 pm 03:12 PM

이 기사는 PHP의 대칭 및 비대칭 암호화에 대해 논의하여 적합성, 성능 및 보안 차이를 비교합니다. 대칭 암호화는 더 빠르고 벌크 데이터에 적합하지만 안전한 키 교환에는 비대칭이 사용됩니다.

PHP 인증 & amp; 승인 : 보안 구현. PHP 인증 & amp; 승인 : 보안 구현. Mar 25, 2025 pm 03:06 PM

이 기사에서는 PHP에서 강력한 인증 및 승인을 구현하여 무단 액세스를 방지하고 모범 사례를 자세히 설명하고 보안 향상 도구를 권장합니다.

PHP API 요율 제한 : 구현 전략. PHP API 요율 제한 : 구현 전략. Mar 26, 2025 pm 04:16 PM

이 기사는 토큰 버킷 및 누출 된 버킷과 같은 알고리즘을 포함하여 PHP에서 API 요율 제한을 구현하고 Symfony/Rate-Limiter와 같은 라이브러리 사용 전략에 대해 설명합니다. 또한 모니터링, 동적 조정 요율 제한 및 손도 다룹니다.

PHP 입력 유효성 검증 : 모범 사례. PHP 입력 유효성 검증 : 모범 사례. Mar 26, 2025 pm 04:17 PM

기사는 내장 함수 사용, 화이트리스트 접근 방식 및 서버 측 유효성 검사와 같은 기술에 중점을 둔 보안을 향상시키기 위해 PHP 입력 유효성 검증에 대한 모범 사례를 논의합니다.

PHP CSRF 보호 : CSRF 공격 방지 방법. PHP CSRF 보호 : CSRF 공격 방지 방법. Mar 25, 2025 pm 03:05 PM

이 기사는 CSRF 토큰, 동일한 사이트 쿠키 및 적절한 세션 관리를 포함하여 PHP의 CSRF 공격을 방지하는 전략에 대해 설명합니다.

See all articles