현재 위치: > 최신 기사 목록> 기능의 반환 값이 null인지 확인하기 위해 PHP에서 IS_NULL을 사용하는 방법

기능의 반환 값이 null인지 확인하기 위해 PHP에서 IS_NULL을 사용하는 방법

gitbox 2025-06-07

PHP 프로그래밍에서, 특히 기능을 취급 할 때 변수가 인지 여부를 결정하는 것이 일반적인 작업입니다. NULL을 올바르게 식별하면 논리적 오류 및 프로그램 충돌을 피할 수 있습니다. 이 기사에서는 IS_NULL 기능을 사용하여 함수의 반환 값이 NULL 인지 확인하고 실제 응용 프로그램을 더 잘 이해하는 데 도움이되는 코드 예제와 협력하는 방법을 자세히 설명합니다.

1. IS_NULL 기능 소개

IS_NULL ()는 변수가 null 인지 여부를 감지하기 위해 PHP의 내장 함수입니다. 기본 구문은 다음과 같습니다.

 is_null(mixed $var): bool

변수를 매개 변수로 수신하고 변수의 값이 NULL 인 경우 true를 반환합니다. 그렇지 않으면 false 를 반환합니다.

2. 함수가 값을 반환하는 몇 가지 상황은 null

PHP에서는 함수 리턴 값이 null이 될 수있는 일반적인 상황에 다음과 같습니다.

  1. 함수는 명시 적으로 null을 반환합니다

  2. 함수에는 반환 명령문이 없습니다

  3. 정의되지 않은 키 또는 객체 속성이 호출되었습니다

먼저 예를 들어 간단한 기능을 정의하겠습니다.

 function getUserEmail($userId) {
    // 데이터베이스에서 사용자 정보를 얻으려면 시뮬레이션합니다
    $users = [
        1 => '[email protected]',
        2 => '[email protected]'
    ];

    return $users[$userId] ?? null;
}

이 기능은 사용자 ID를 기반으로 이메일 주소를 반환하려고 시도하며 사용자가 존재하지 않으면 NULL을 반환합니다.

3. IS_NULL을 사용하여 함수의 반환 값을 결정합니다.

IS_NULL을 사용하여 함수의 리턴 결과가 NULL 인지 확인할 수 있습니다.

 $userId = 3;
$email = getUserEmail($userId);

if (is_null($email)) {
    echo "사용자 ID {$userId} 사서함 레코드가 없습니다。";
} else {
    echo "사용자邮箱是:{$email}";
}

출력은 다음과 같습니다.

 사용자 ID 3 사서함 레코드가 없습니다。

우리가 통과 한 ID 3은 배열에 존재하지 않기 때문에 getUserEmail은 null을 반환 합니다.

4. === null과 비교

일부 개발자는 is_null 대신 === null을 사용합니다.

 if ($email === null) {
    // 논리적 처리
}

이 두 가지 작문 방법은 기능적으로 동일하지만 IS_NULL은 특히 영어 코드를 읽을 때 더 읽을 수 있습니다. "이 값은 null입니까?" .

5. 오류 데모 : 반환 값을 직접 판단하십시오

경우에 따라 개발자는 다음 코드를 작성합니다.

 if (!$email) {
    // ...
}

이 글쓰기 방법은 Null을 캡처 할 수 있지만 빈 문자열, 숫자 0, 부울 거짓 등과 같은 다른 "거짓 값"을 잘못 판단 할 수도 있습니다.

예를 들어:

 $email = "";
if (!$email) {
    echo "사서함 레코드가 없습니다"; // 잘못된 판단
}

현재 $ 이메일은 NULL이 아니지만 잘못된 값으로 판단되어 논리적 오류가 발생합니다. 따라서 IS_NULL을 사용하여 자동 변환 유형에 의존하기보다는 NULL을 명시 적으로 결정하는 것이 좋습니다.

6. IS_NULL 복잡한 응용 프로그램 시나리오에서

때로는 IS_NULL 판단을 사용하여 다차원 배열 또는 API 요청으로 결과를 반환합니다. 다음은 원격 API를 호출하고 반환이 null 인지 결정하는 예입니다.

 function fetchUserData($id) {
    // 원격 인터페이스 요청을 시뮬레이션합니다
    $response = file_get_contents("https://gitbox.net/api/user?id={$id}");
    $data = json_decode($response, true);

    return $data['user']['email'] ?? null;
}

$email = fetchUserData(10);

if (is_null($email)) {
    echo "无法获取사용자邮箱信息";
} else {
    echo "사용자邮箱是:{$email}";
}

이 예에서는 원격 인터페이스가 이메일 필드를 반환하지 않으면 IS_NULL 은이 널 값을 잡고 프로그램이 잘못된 논리를 계속 실행하는 것을 방지하는 데 도움이됩니다.

7. 결론

PHP에서 함수가 NULL을 반환하는지 여부를 올바르게 결정하는 것은 강력한 코드를 작성하는 데 중요한 단계입니다. === null을 사용하여 판단 할 수 있지만 IS_NULL은 보다 직관적이고 표현적인 방법을 제공합니다. 이 기사의 소개를 통해 IS_NULL을 사용하여 함수가 을 반환하는 다양한 시나리오를 안전하고 효율적으로 처리하는 방법을 마스터했다고 생각합니다. 코드의 견고성과 유지 가능성을 향상시키기 위해 실제 개발에서 합리적으로 사용할 수 있기를 바랍니다.