(PHP 4, PHP 5, PHP 7, PHP 8)
defined — Verifica se existe uma constante com o nome informado
Verifica se uma constante com o nome informado em constant_name
está definida.
A função também funciona com constantes de classe e casos de enumeração.
Nota:
Se o objetivo for verificar se uma variável existe, use a função isset() já que a função defined() somente se aplica a constantes. Se o objetivo for verificar se uma função existe, use a função function_exists().
constant_name
O nome da constante.
Retorna true
se a constante nomeada informada por constant_name
já está definida, false
caso contrário.
Exemplo #1 Verificando constantes
<?php
if (defined('TEST')) {
echo TEST;
}
interface bar {
const test = 'foobar!';
}
class foo {
const test = 'foobar!';
}
var_dump(defined('bar::test')); // bool(true)
var_dump(defined('foo::test')); // bool(true)
?>
Exemplo #2 Verificando Casos de Enumeração (a partir do PHP 8.1.0)
<?php
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
var_dump(defined('Suit::Hearts')); // bool(true)
?>