PHP é_nulo

Resumo : neste tutorial, você aprenderá como usar a is_null()construção PHP para verificar se uma variável é null.

Introdução à construção is_null() do PHP

PHP is_null()aceita uma variável e retorna truese essa variável for null. Caso contrário, ele retorna false.

is_null(mixed $v): boolLinguagem de código:  PHP  ( php )

Nesta sintaxe, the $vé a variável a ser verificada. Caso $vnão exista, o is_null()também retorna truee emite aviso.

Como the is_null()é uma construção de linguagem, não uma função , você não pode chamá-la por meio de funções variáveis . Por exemplo, a seguinte instrução resultará em um erro:

<?php

$f = is_null;Linguagem de código:  PHP  ( php )

No entanto, você pode definir uma função que envolva a is_null()construção assim:

<?php

function isnull($v): bool
{
    return is_null($v);
}Linguagem de código:  PHP  ( php )

Alternativamente, você pode definir uma função de seta , atribuí-la a uma variável e usar essa função de variável.

<?php

$isnull = fn($v) => is_null($v);

$color = null;
echo $isnull($color); // trueLinguagem de código:  PHP  ( php )

Exemplos de PHP is_null()

O exemplo a seguir usa a is_null()construção e retorna trueporque a $countvariável não existe:

<?php

var_dump(is_null($count));Linguagem de código:  PHP  ( php )

Este código também emite um aviso:

Notice: Undefined variable: $countLinguagem de código:  PHP  ( php )

O exemplo a seguir usa is_null()e retorna trueporque a $countvariável é null:

<?php

$count = null;
var_dump(is_null($count)); // trueLinguagem de código:  PHP  ( php )

O exemplo a seguir usa is_null()e retorna falso porque a $countvariável não é null:

<?php

$count = 1;
var_dump(is_null($count)); // falseLinguagem de código:  PHP  ( php )

PHP is_null() com array

O exemplo a seguir usa o is_null()para verificar se o elemento com a chave linké nullou não. Ele retorna trueporque o elemento não existe:

<?php

$colors = [
    'text' => 'black',
    'background' => 'white'
];

var_dump(is_null($colors['link']));Linguagem de código:  PHP  ( php )

Ele também retorna um aviso:

Notice: Undefined index: linkLinguagem de código:  PHP  ( php )

PHP is_null() com índice de string

O exemplo a seguir usa o is_null()para verificar se o elemento no índice 5 da string $messageé nulo ou não:

<?php

$message = 'Hello';

var_dump(is_null($message[5]));Linguagem de código:  PHP  ( php )

Ele retorna falso e emite um aviso:

PHP Notice:  Uninitialized string offset: 5Linguagem de código:  PHP  ( php )

PHP is_null(), operador igual (==) e operador de identidade (===)

O echo exibe uma string vazia para o valor falso, o que não é intuitivo. O seguinte define uma função que exibe false como a string false em vez de uma string vazia:

<?php

function echo_bool(string $title, bool $v): void
{
    echo $title, "\t", $v === true ? 'true' : 'false', PHP_EOL;
}Linguagem de código:  PHP  ( php )

Comparando valores falsos com nulos usando o operador igual (==)

Comparar um valor falso com nullo uso do operador igual ( ==) retornará true. Por exemplo:

O exemplo a seguir compara nullcom valores falsos usando o operador igual ( ==):

<?php

function echo_bool(string $title, bool $v): void
{
    echo $title, "\t", $v === true ? 'true' : 'false', PHP_EOL;
}

echo_bool('null == false:', null == false);
echo_bool('null == 0:', null == 0);
echo_bool('null == 0.0:', null == 0.0);
echo_bool('null =="0":', null == false);
echo_bool('null == "":', null == '');
echo_bool('null == []:', null == []);
echo_bool('null == null:', null == null);Linguagem de código:  PHP  ( php )

Saída:

null == false:  true
null == 0:      true
null == 0.0:    true
null =="0":     true
null == "":     true
null == []:     true
null == null:   trueLinguagem de código:  texto simples  ( texto simples )

Comparando valor falso com nulo usando o operador de identidade (===)

O exemplo a seguir usa o operador de identidade (===) para comparar valores nulos com valores falsos, null === nullretorna apenas true.

<?php

function echo_bool(string $title, bool $v): void
{
    echo $title, "\t", $v === true ? 'true' : 'false', PHP_EOL;
}

echo_bool('null === false:', null === false);
echo_bool('null === 0:', null === 0);
echo_bool('null === 0.0:', null === 0.0);
echo_bool('null ==="0":', null === false);
echo_bool('null === "":', null === '');
echo_bool('null === []:', null === []);
echo_bool('null === null:', null === null);Linguagem de código:  texto simples  ( texto simples )

Saída:

null === false: false
null === 0:     false
null === 0.0:   false
null ==="0":    false
null === "":    false
null === []:    false
null === null:  trueLinguagem de código:  PHP  ( php )

Comparando valores falsos com null usando PHP is_null()

O exemplo a seguir usa o is_null()para verificar se os valores falsos são null:

<?php

function echo_bool(string $title, bool $v): void
{
    echo $title, "\t", $v === true ? 'true' : 'false', PHP_EOL;
}

echo_bool('is_null(false):', is_null(false));
echo_bool('is_null(0):', is_null(0));
echo_bool('is_null(0.0)', is_null(0.0));
echo_bool('is_null("0"):', is_null("0"));
echo_bool('is_null(""):', is_null(""));
echo_bool('is_null([]):', is_null([]));
echo_bool('is_null(null):', is_null(null));Linguagem de código:  PHP  ( php )

Saída:

is_null(false): false
is_null(0):     false
is_null(0.0)    false
is_null("0"):   false
is_null(""):    false
is_null([]):    false
is_null(null):  trueLinguagem de código:  PHP  ( php )

O is_null()operador de identidade e ( ===) retorna o mesmo resultado.

Resumo

  • O is_null()verifica um valor e retorna truese esse valor for null. Caso contrário, ele retorna false.
  • O is_null()se comporta da mesma forma que o operador de identidade ( ===).

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *