array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.empty.php', 1 => 'empty', ), 'up' => array ( 0 => 'ref.var.php', 1 => 'Funções para Manipulação de variáveis', ), 'prev' => array ( 0 => 'function.doubleval.php', 1 => 'doubleval', ), 'next' => array ( 0 => 'function.floatval.php', 1 => 'floatval', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/var/functions/empty.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
empty — Determina se uma variável está vazia
Determina se uma variável é considerada vazia. Uma variável é considerada vazia se não existir ou seu valor for igual a false
. A função empty() não gera um aviso se a variável não existir.
var
Variável a ser verificada
Nenhum aviso é gerado se a variável não existir. Isso significa que a função empty() é essencialmente o equivalente sucinto de !isset($var) || $var == false.
Retorna true
se var
não existir ou se tiver um valor que é vazio ou igual a zero.
Consulte conversão para booleano.
Caso contrário, retorna false
.
Exemplo #1 Uma simples comparação entre as funções empty() / isset().
<?php
$var = 0;
// Avaliado como verdadeiro porque $var está vazia
if (empty($var)) {
echo '$var é 0, vazia ou não definida';
}
// Avaliado como verdadeiro porque $var está definida
if (isset($var)) {
echo '$var está definida embora esteja vazia';
}
?>
Exemplo #2 Função empty() em Deslocamentos de String
<?php
$expected_array_got_string = 'somestring';
var_dump(empty($expected_array_got_string['some_key']));
var_dump(empty($expected_array_got_string[0]));
var_dump(empty($expected_array_got_string['0']));
var_dump(empty($expected_array_got_string[0.5]));
var_dump(empty($expected_array_got_string['0.5']));
var_dump(empty($expected_array_got_string['0 Mostel']));
?>
O exemplo acima produzirá:
bool(true) bool(false) bool(false) bool(false) bool(true) bool(true)
Nota: Como esta é uma construção da linguagem e não uma função, ela não pode ser chamada usando funções variáveis ou argumentos nomeados.
Nota:
Ao utilizar a função empty() em propriedades de objetos inacessíveis, o método de sobrecarga __isset() será chamado, se declarado.