> 백엔드 개발 > PHP 문제 > PHP에서 배열 첨자 아래에 값이 있는지 확인하는 방법

PHP에서 배열 첨자 아래에 값이 있는지 확인하는 방법

PHPz
풀어 주다: 2023-04-20 14:56:56
원래의
590명이 탐색했습니다.

PHP 언어는 웹 개발에 널리 사용되는 스크립트 언어입니다. PHP 개발에서는 배열 첨자 아래에 값이 있는지 판단하는 것이 기본적인 작업입니다. 이 글에서는 이론적인 관점과 실제적인 관점 모두에서 이 문제를 소개할 것입니다.

1. 이론적 근거

PHP에서 배열은 여러 값을 저장할 수 있는 복합 데이터 유형입니다. 배열의 각 요소에는 숫자, 문자열 또는 기타 유형이 될 수 있는 아래 첨자가 있습니다. 인덱스에 해당하는 요소에 값이 할당되지 않은 경우 null로 간주됩니다. PHP는 배열 첨자가 존재하고 값이 있는지 여부를 감지하는 몇 가지 기능을 제공합니다. 사용법은 다음과 같습니다.

  1. isset() 함수

isset() 함수는 변수에 값이 할당되었고 null이 아닌지 확인하는 데 사용됩니다. 배열 요소의 첨자가 존재하는지 여부를 감지하는 데 사용할 수 있습니다. 배열 요소의 첨자가 존재하고 값이 할당된 경우 isset() 함수는 true를 반환하고, 배열 요소의 첨자가 존재하지 않거나 null 값이 할당된 경우 isset() 함수는 false를 반환합니다.

다음은 isset() 함수를 사용하여 배열 첨자 아래에 값이 있는지 확인하는 방법을 보여주는 샘플 코드입니다.

<?php
$arr = array("apple"=>"red", "banana"=>"yellow");
if(isset($arr["apple"])){
    echo "apple is red";
}
if(isset($arr["orange"])){
    echo "orange is not in the array"; // 不会执行,因为 orange 在数组中不存在
}
?>
로그인 후 복사

이 예에서는 사과와 바나나라는 두 요소가 포함된 연관 배열 $arr을 정의합니다. . isset() 함수를 사용하여 사과와 오렌지 요소가 존재하는지 확인했습니다. "apple"이 배열에 존재하기 때문에 코드의 첫 번째 if 문이 실행되어 "apple is red"가 인쇄됩니다. "orange"가 배열에 존재하지 않기 때문에 이 첨자는 null로 처리되며 출력 작업이 수행되지 않습니다.

  1. array_key_exists() 함수

array_key_exists() 함수는 지정된 첨자가 배열에 존재하는지, 해당 값이 null이 아닌지 확인할 수 있습니다. isset() 함수와 달리 이 함수는 확인할 첨자 이름이라는 하나의 매개변수만 허용합니다. 배열 요소의 첨자가 존재하고 null이 아닌 경우 함수는 true를 반환하고, 그렇지 않으면 false를 반환합니다.

다음은 array_key_exists() 함수를 사용하는 샘플 코드입니다.

<?php
$arr = array("apple"=>"red", "banana"=>"yellow");
if(array_key_exists("apple", $arr)){
    echo "apple is red";
}
if(array_key_exists("orange", $arr)){
    echo "orange is not in the array"; // 不会执行,因为 orange 在数组中不存在
}
?>
로그인 후 복사

이 코드는 이전 코드와 유사하지만 "apple"과 "orange" 두 요소가 배열에 존재하는지 확인합니다. array_key_exists() 함수를 통해서도 isset()과 동일한 결과를 얻을 수 있습니다.

2. 실습

이론 외에도 실제 코드를 통해 배열 첨자 아래에 값이 있는지 확인하는 방법도 배울 수 있습니다.

다음은 배열과 첨자 이름을 파라미터로 받아 첨자 아래의 요소가 존재하는지 확인하고 그 값을 반환하는 예제 함수입니다.

function getValueByIndex($arr, $index){
    if(array_key_exists($index, $arr)){
        return $arr[$index];
    }
    else{
        return "undefined";
    }
}

$arr = array("apple"=>"red", "banana"=>"yellow");
echo "The color of the apple is ".getValueByIndex($arr, "apple")."\n"; // 输出:The color of the apple is red
echo "The color of the orange is ".getValueByIndex($arr, "orange")."\n"; // 输出:The color of the orange is undefined
로그인 후 복사

이 함수는 먼저 array_key_exists() 함수를 호출하여 지정된 여부를 확인합니다. 아래 첨자가 배열에 존재합니다. 존재하는 경우 함수는 아래 첨자에 해당하는 값을 반환하고, 그렇지 않은 경우 "정의되지 않음" 문자열을 반환합니다. 이 예제의 결과에서는 배열에 아래 첨자 "apple"이 존재하므로 첫 번째 echo 문에서 "The color of the apple is red"를 출력합니다. 대조적으로, 두 번째 echo 문에서는 배열에 존재하지 않는 아래 첨자 "orange"의 값을 가져오려고 하므로 함수는 "정의되지 않음"을 반환합니다.

요약

PHP에서는 배열 첨자 아래에 값이 있는지 판단하는 것이 기본적인 작업입니다. isset()과 array_key_exists()라는 두 가지 함수를 사용할 수 있습니다. 전자는 주로 변수/배열 요소에 값이 할당되었는지 확인하는 데 사용되며, 후자는 주로 배열 첨자가 존재하는지 확인하는 데 사용되며 해당 값은 다음과 같습니다. null이 아닙니다. 동시에 우리는 손으로 작성한 함수를 통해 이 작업을 구현할 수 있습니다. 이 작업을 마스터하면 PHP 언어의 일부 기본 기능을 더 잘 이해하고 후속 개발 작업을 위한 견고한 기반을 마련하는 데 도움이 될 수 있습니다.

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

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