> 백엔드 개발 > PHP 문제 > PHP는 값이 2차원 배열의 ID에 있는지 확인합니다.

PHP는 값이 2차원 배열의 ID에 있는지 확인합니다.

WBOY
풀어 주다: 2023-05-23 15:21:38
원래의
491명이 탐색했습니다.

PHP 개발자에게 배열 조작은 일상 업무에서 매우 일반적인 작업 중 하나입니다. 많은 경우, 다른 많은 배열이 포함된 2차원 배열에서 특정 값을 찾아야 합니다. 이 기사에서는 값이 PHP의 2차원 배열 ID에 있는지 확인하는 방법을 독자에게 소개합니다.

먼저 2차원 배열이 무엇인지 살펴보겠습니다. 간단히 말해서, 2차원 배열은 여러 배열을 포함하는 배열입니다. 각 내부 배열에는 자체 키와 값이 있으며 일반적으로 두 개의 키를 사용할 수 있습니다. 첫 번째 키는 외부 배열의 내부 배열에 액세스하는 데 사용되고 두 번째 키는 내부 배열의 값에 액세스하는 데 사용됩니다. 예:

$employees = array(
   array("id" => 101, "name" => "John"),
   array("id" => 102, "name" => "Mary"),
   array("id" => 103, "name" => "Peter")
);
로그인 후 복사

위의 예에서 $employees는 세 개의 내부 배열을 포함하는 2D 배열입니다. 각 내부 배열에는 값이 101/John, 102/Mary 및 103/Peter인 두 개의 키(id 및 name)가 있습니다.

이제 위 배열에 특정 id 값이 존재하는지 확인하고 싶다면 PHP의 foreach 루프를 사용하여 찾을 수 있습니다. 코드 예제는 다음과 같습니다.

$found = false;
$search_id = 102;
foreach ($employees as $employee) {
    if ($employee['id'] === $search_id) {
        $found = true;
        break;
    }
}
if ($found) {
    echo "The ID is in the array";
} else {
    echo "The ID isn't in the array";
}
로그인 후 복사

이 예제에서는 먼저 $found 변수를 정의하고 false로 초기화합니다. 그런 다음 $search_id 변수를 정의하고 찾고 있는 특정 id 값을 할당합니다. 다음으로 foreach 루프를 사용하여 $employees 배열을 반복하고 if 문을 사용하여 각 내부 배열의 id 키가 $search_id와 같은지 확인합니다. 일치하는 항목이 발견되면 $found 변수를 true로 설정하고 break 문을 사용하여 루프를 종료합니다. 마지막으로 $found 변수의 값을 확인하여 특정 id 값이 배열에 있는지 확인합니다.

이 방법은 비교적 간단하지만 대규모 2차원 배열의 경우 성능 문제가 있을 수 있습니다. 특히 조회가 자주 필요한 경우 매번 전체 배열 탐색을 수행하면 애플리케이션 성능이 저하될 수 있습니다. 이 문제를 피하기 위해 PHP에서는 array_column 함수와 in_array 함수를 사용할 수 있습니다.

array_column 함수는 지정된 키 값이 포함된 입력 배열에서 새 배열을 반환하는 매우 유용한 PHP 함수입니다. 따라서 위의 $employees 배열에서 id 값을 추출하려면 다음 코드를 사용할 수 있습니다.

$ids = array_column($employees, 'id');
로그인 후 복사

위 예에서는 $employees 배열을 array_column 함수의 첫 번째 매개 변수로 전달하고 id 첫 번째 매개변수로 두 개의 매개변수가 전달됩니다. $employees 내부 배열의 모든 id 값을 포함하는 새 배열을 반환합니다.

다음으로 in_array 함수를 사용하여 찾고 있는 특정 값이 $ids 배열에 있는지 확인할 수 있습니다. 코드 예제는 다음과 같습니다.

$search_id = 102;
if (in_array($search_id, $ids)) {
    echo "The ID is in the array";
} else {
    echo "The ID isn't in the array";
}
로그인 후 복사

이 예제에서는 먼저 $search_id 변수를 정의하고 찾고 있는 특정 id 값을 할당합니다. 그런 다음 in_array 함수를 사용하여 $search_id가 $ids 배열에 있는지 확인합니다. 일치하는 항목이 발견되면 "ID가 배열에 있습니다"라는 메시지가 출력되고, 그렇지 않으면 "ID가 배열에 없습니다"라는 메시지가 출력됩니다.

요약하자면, 2D 배열에서 특정 값을 찾는 것은 PHP 개발자에게 매우 일반적인 작업입니다. 이 문서에서는 전체 배열 순회를 위해 foreach 루프를 사용하고 array_column 함수와 in_array 함수를 사용하는 두 가지 방법을 설명합니다. 어떤 방법을 사용하든 프로그램의 성능과 가독성을 보장해야 합니다.

위 내용은 PHP는 값이 2차원 배열의 ID에 있는지 확인합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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