array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.constant.php', 1 => 'constant', ), 'up' => array ( 0 => 'ref.misc.php', 1 => 'Misc. Funções', ), 'prev' => array ( 0 => 'function.connection-status.php', 1 => 'connection_status', ), 'next' => array ( 0 => 'function.define.php', 1 => 'define', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/misc/functions/constant.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(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)
?>