>  기사  >  백엔드 개발  >  PHP에서 배열에 특정 값이 포함되어 있는지 확인하는 방법

PHP에서 배열에 특정 값이 포함되어 있는지 확인하는 방법

PHPz
PHPz원래의
2023-04-19 09:17:05839검색

PHP 개발에서 배열은 매우 일반적으로 사용되는 데이터 구조입니다. 배열을 사용하는 과정에서 배열에 특정 값이 포함되어 있는지 판단하는 경우가 종종 있습니다. 이 기사에서는 배열에 PHP의 특정 값이 포함되어 있는지 빠르게 확인하는 방법을 간략하게 소개하고 참조용 샘플 코드를 제공합니다.

1. in_array() 함수를 사용하여 확인

PHP에서는 in_array() 함수를 사용하여 배열에 특정 값이 포함되어 있는지 빠르게 확인합니다. 이 함수는 두 개의 매개변수를 받습니다. 첫 번째 매개변수는 찾을 값이고 두 번째 매개변수는 쿼리할 배열입니다. 값을 쿼리하면 true가 반환되고, 그렇지 않으면 false가 반환됩니다.

샘플 코드:

$arr = array('php', 'java', 'python', 'ruby');
if (in_array('php', $arr)) {
  echo '该数组中包含php';
} else {
  echo '该数组中不包含php';
}

출력:

该数组中包含php

2. array_search() 함수를 사용하여 결정

일반적으로 사용되는 또 다른 함수는 array_search()입니다. 이는 in_array()와 유사하며 배열에 특정 항목이 포함되어 있는지 빠르게 확인할 수 있습니다. 값. 차이점은 array_search() 함수가 true 또는 false를 반환하는 대신 일치하는 키 이름을 반환한다는 것입니다.

샘플 코드:

$arr = array('php', 'java', 'python', 'ruby');
$key = array_search('php', $arr);
if ($key !== false) {
  echo '该数组中包含php,其键名为:' . $key;
} else {
  echo '该数组中不包含php';
}

출력:

该数组中包含php,其键名为:0

array_search()가 일치하는 키 이름을 반환하므로 반환 값이 false인지 확인해야 하며 if(array_search('php ')를 사용할 수 없다는 점에 유의해야 합니다. , $arr)).

3. 퍼지 일치를 위해 in_array() 및 array_search() 함수를 사용하세요

배열에 특정 값이 포함되어 있는지 확인하기 위해 때로는 퍼지 일치가 필요합니다. 예를 들어 배열에 "php"라는 문자열이 포함되어 있는지 확인해야 합니다. in_array() 및 array_search() 함수와 함께 정규식을 사용하여 퍼지 일치를 수행할 수 있습니다.

샘플 코드:

$arr = array('welcome to php world', 'java is the best language', 'I love python', 'ruby on rails');
$pattern = '/.*php.*/i'; // 匹配包含php字样的字符串
foreach ($arr as $value) {
  if (preg_match($pattern, $value)) {
    if (in_array($value, $arr)) {
      echo $value . ' 存在于数组中';
    } else {
      $key = array_search($value, $arr);
      echo $value . ' 的键名为:' . $key . ',但其实际不在数组中';
    }
  }
}

출력:

welcome to php world 存在于数组中

Summary

PHP에서는 in_array() 및 array_search() 함수를 사용하여 배열에 특정 값이 포함되어 있는지 여부를 확인할 수 있습니다. 두 함수의 차이점은 반환 값의 유형입니다. 퍼지 일치 중에는 정규식을 in_array() 및 array_search() 함수와 함께 사용하여 판단해야 한다는 점에 유의해야 합니다.

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

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