현재 위치: > 최신 기사 목록> IS_NULL과 빈 함수의 차이와 비교

IS_NULL과 빈 함수의 차이와 비교

gitbox 2025-05-31

PHP 프로그래밍에서 IS_NULL빈은 변수의 상태를 판단하는 데 사용되는 일반적으로 사용되는 두 가지 기능이지만 해당 기능은 사용의 기능과 분명히 다릅니다. 이 기사는이 두 기능을 세부적으로 비교하여 차이점을 이해하고 실제 개발에 합리적으로 사용하는 데 도움이됩니다.


1. 기능 정의 및 기본 기능

  • is_null ($ var)
    변수가 null 인지 확인하십시오. 변수의 값이 엄격하게 무인 상태 인 경우 true , 그렇지 않으면 거짓을 반환하십시오.

  • 빈 ($ var)
    변수가 비어 있는지 확인하십시오. 여기서 "빈"은 비교적 넓습니다. NULL 외에도 False , Empty String "" , 0 , "0" , 빈 배열 [] 및 기타 상황도 포함됩니다. 변수의 값이 "빈"으로 간주되면 true를 반환하십시오. 그렇지 않으면 false를 반환하십시오.


2. 특정 차이에 대한 자세한 설명

비교 항목 IS_NULL 비어 있는
판단 내용 그것이 null 인지 만 결정하십시오 변수가 비어 있는지 확인하십시오 ( null , false , 0 , 빈 문자열, 빈 배열 등).
변수가 선언 되었습니까? 변수는 선언되어야합니다. 그렇지 않으면 오류 가보고되거나 메시지 가보고됩니다. 변수가 선언되지 않으면 오류가보고되지 않으며 직접 반환됩니다 .
해당 시나리오 변수가 무효 인지를 엄격히 판단해야합니다. 변수가 "의미없는"또는 "널"인지 확인
결과 예 is_null (0)은 false를 반환합니다 빈 (0)은 참으로 반환합니다

3. 코드 샘플 비교

 <?php
$var1 = null;
$var2 = 0;
$var3 = "";
$var4 = false;
$var5 = [];

var_dump(is_null($var1)); // true
var_dump(empty($var1));   // true

var_dump(is_null($var2)); // false
var_dump(empty($var2));   // true

var_dump(is_null($var3)); // false
var_dump(empty($var3));   // true

var_dump(is_null($var4)); // false
var_dump(empty($var4));   // true

var_dump(is_null($var5)); // false
var_dump(empty($var5));   // true

// 변수가 정의되지 않은 경우
var_dump(empty($undefined_var)); // true
// var_dump(is_null($undefined_var)); // 오류를보고합니다:정의되지 않은 변수
?>

4. 예방 조치와 제안

  • 정의되지 않은 변수 처리 <br> 정의되지 않은 변수가보고되지 않는지 확인하기 위해 빈을 사용하면 변수가 선언되지 않을 때 "널 값"판단을 만드는 것이 적합합니다. IS_NULL은 변수를 선언해야합니다. 그렇지 않으면 오류가 발생합니다.

  • 논리 요구 사항 선택 <br> 변수가 NULL 에 할당되었는지 여부를 엄격하게 판단 해야하는 경우 IS_NULL을 사용해야합니다. 변수가 "비어있는 것과 동일"하는지 여부를 결정하면 사용이 더 적절합니다.

  • ISSET 과의 차이
    ISSET은 변수가 설정되었는지 여부를 결정하는 데 사용됩니다. 이 두 기능과 함께 사용하여 변수 상태를보다 정확하게 제어 할 수 있습니다.


5. 실제 적용 사례

API에서 데이터를 가져 와서 데이터가 유효한 지 확인한다고 가정 해 봅시다.

 <?php
$response = file_get_contents("https://gitbox.net/api/data");

$data = json_decode($response, true);

if (is_null($data['value'])) {
    echo "데이터는입니다 NULL,다시 요청해야합니다";
}

if (empty($data['value'])) {
    echo "데이터는입니다空,아마도 0、빈 문자열이든 설정되지 않음";
}
?>

위의 코드 예제에서 IS_NULL은 정확한 널을 결정하는 데 사용되는 반면, 빈는 더 넓은 범위의 "유효하지 않은"또는 "빈"케이스를 덮습니다.