> 백엔드 개발 > PHP 문제 > PHP 쿼리 배열 지정된 값 위치

PHP 쿼리 배열 지정된 값 위치

WBOY
풀어 주다: 2023-05-07 20:17:36
원래의
1027명이 탐색했습니다.

PHP에서 배열은 매우 일반적이고 강력한 데이터 유형입니다. PHP 배열을 사용하는 과정에서 가장 일반적인 작업 중 하나는 배열에서 지정된 값의 위치를 ​​쿼리하는 것입니다. 이 문서에서는 이 작업을 수행하는 여러 가지 방법을 소개합니다.

방법 1: array_search() 함수 사용

array_search() 함수는 배열에서 지정된 값을 찾고 해당 값의 키 이름을 반환하는 데 사용되는 PHP 내장 함수 중 하나입니다. 이 함수를 사용하는 것은 매우 간단합니다. 첫 번째는 찾을 값이고 두 번째는 배열에서 지정된 값을 검색하여 해당 키 이름을 반환합니다.

다음은 샘플 코드입니다.

$fruits = array("apple", "banana", "orange");
$key = array_search("banana", $fruits);
echo "The key of banana is: " . $key;  //输出:The key of banana is: 1
로그인 후 복사

방법 2: in_array() 함수와 array_keys() 함수 사용

array_search() 함수 외에도 PHP는 두 가지 함수, 즉 in_array() 함수와 array_keys() 함수는 배열에서 지정된 값의 위치를 ​​쿼리하는 데에도 사용할 수 있습니다.

in_array() 함수는 지정된 값이 배열에 존재하는지 확인하는 데 사용됩니다. 존재하면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 지정된 값의 키 이름을 가져와야 하는 경우 지정된 값의 모든 키 이름이 포함된 배열을 반환하는 array_keys() 함수를 사용할 수 있습니다.

다음은 샘플 코드입니다.

$fruits = array("apple", "banana", "orange");
if (in_array("banana", $fruits)) {
    $keys = array_keys($fruits, "banana");
    echo "The key of banana is: " . implode(",", $keys);  //输出:The key of banana is: 1
}
로그인 후 복사

방법 3: foreach() 루프 사용

내장 함수를 사용하는 것 외에도 배열을 순회하여 지정된 값의 위치를 ​​찾을 수도 있습니다.

  1. foreach()를 사용하여 배열을 반복합니다.
  2. 루프에서 배열의 각 값을 대상 값과 비교합니다.
  3. 일치에 성공하면 현재 키 이름을 반환합니다.

샘플 코드는 다음과 같습니다.

$fruits = array("apple", "banana", "orange");
$search = "banana";
foreach ($fruits as $key => $value) {
    if ($search == $value) {
        echo "The key of $search is: " . $key;  //输出:The key of banana is: 1
        break;
    }
}
로그인 후 복사

이 방법은 더 직관적이지만 큰 배열을 검색하는 데 시간이 많이 걸릴 수 있으므로 큰 배열을 처리하는 데 적합하지 않습니다.

요약:

위의 세 가지 방법은 모두 PHP 배열에서 지정된 값의 위치를 ​​쿼리하는 데 사용할 수 있으며, 그중 array_search() 함수를 사용하는 것이 가장 간단하고 빠른 방법입니다. 지정된 값을 포함하는 모든 키 이름을 가져와야 하는 경우 in_array() 함수와 array_keys() 함수를 결합하여 사용할 수 있습니다. 더 작은 배열에서 특정 값을 찾아야 하는 경우 루프 순회를 사용할 수 있습니다.

어떤 방법이든 일반적인 배열 연산 중 하나입니다. 실제 개발에서는 특정 상황에 따라 배열을 처리하는 가장 적절한 방법을 선택하는 것이 필요합니다.

위 내용은 PHP 쿼리 배열 지정된 값 위치의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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