Capítulo 8. Constantes

O PHP define várias constantes e fornece um mecanismo para definir outras mais em tempo de execução. Constantes são bem parecidos com variáveis, exceto pelos fatos de que constantes precisam ser definidas usando a função define(), e que elas não podem ser redefinidas para outro valor, mais tarde.

As constantes pré-definidas (sempre disponíveis) são:

__FILE__

O nome do arquivo de script que está sendo analisado atualmente. Se for usado dentro de um arquivo que foi incluído ou requerido, então o nome do arquivo incluído é dado, e não o nome do arquivo pai.

__LINE__

O número da linha dentro do arquivo de script corrente que está sendo analisado. Se for usado dentro de um arquivo que foi incluído ou requerido, então é dada a posição dentro do arquivo de inclusão.

PHP_VERSION

A representação de string da versão do analisador PHP atualmente em uso; por exemplo '3.0.8-dev'.

PHP_OS

O nome do sistema operacional no qual o analisador PHP está sendo executado; por exemplo 'Linux'.

TRUE

Um valor verdadeiro.

FALSE

Um valor falso.

E_ERROR

Denota um erro diferente de um erro de análise, no qual a recuperação não é possível.

E_WARNING

Denota uma condição onde o PHP sabe que algo está errado, mas seguirá assim mesmo; isto pode ser percebido pelo próprio script. Um exemplo seria uma expressão regular inválida em ereg().

E_PARSE

O analisador verificou uma sintaxe inválida no arquivo de script. A recuperação não é possível.

E_NOTICE

Aconteceu algo que pode ou não ser um erro. A execução continua. Os exemplos incluem o uso de uma string sem aspas como índice de 'hashing', ou o acesso a uma variável que não foi setada.

E_NOTICE

Aconteceu algo que pode ou não ser um erro. A execução continua. Os exemplos incluem o uso de uma string sem aspas como índice de 'hashing', ou o acesso a uma variável que não foi setada.

E_ALL

Todas as constantes E_* reunidas em uma. Se for usado com error_reporting(), fará com que todo e qualquer problema notificado pelo PHP seja relatado.

As constantes E_* são usadas tipicamente com a função error_reporting() para configurar o nível de reportagem de erros.

Você pode definir constantes adicionais usando a função define().

Note que estas são constantes, e não macros com estilo C; somente dados escalares válidos podem ser representados por uma constante.

Exemplo 8-1. Definindo Constantes


<?php
define("CONSTANT", "Alô mundo.");
echo CONSTANT; // imprime "Alô mundo."
?>
     

Exemplo 8-2. Usando __FILE__ e __LINE__


<?php
function report_error($file, $line, $message) {
    echo "Ocorreu um erro em $file na linha $line: $message.";
}

report_error(__FILE__,__LINE__, "Algo deu errado!");
?>