(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
constant — Retorna o valor de uma constante
Retorna o valor de uma constante indicada pelo parâmetro name
.
A função constant() é útil se você precisa pegar o valor de uma constante, mas não sabe o seu nome. I.e. esta guardada em uma variável ou é retornada por uma função.
Esta função funciona também com constantes de classes e casos de enumeração.
name
O nome da constante.
Retorna o valor da constante.
Se a constante não estiver definida, uma exceção Error é lançada. Antes do PHP 8.0.0, um erro de nível E_WARNING
era gerado nesse caso.
Versão | Descrição |
---|---|
8.0.0 | If the constant is not defined, constant() now throws an Error exception; previously an E_WARNING was generated, and null was returned. |
Exemplo #1 Usando constant() com Constantes
<?php
define("MAXSIZE", 100);
echo MAXSIZE;
echo constant("MAXSIZE"); // mesma coisa que a linha anterior
interface bar {
const test = 'foobar!';
}
class foo {
const test = 'foobar!';
}
$const = 'test';
var_dump(constant('bar::'. $const)); // string(7) "foobar!"
var_dump(constant('foo::'. $const)); // string(7) "foobar!"
?>
Exemplo #2 Usando constant()com Casos de Enumeração (a partir do PHP 8.1.0)
<?php
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
$case = 'Hearts';
var_dump(constant('Suit::'. $case)); // enum(Suit::Hearts)
?>