Costanti predefinite

Le costanti predefinite (sempre disponibili) sono:

__FILE__ (case-insensitive)

Il nome del file dello script processato. Se usato in un file che è stato incluso tramite le funzioni include e require, allora corrisponde al nome del file incluso e non al nome del file genitore.

__LINE__ (case-insensitive)

Il numero di linea all'interno del file processato. Se usato in un file che è stato incluso tramite le funzioni include e require, allora corrisponde alla posizione nel file incluso.

PHP_VERSION

La rappresentazione in formato stringa della versione del motore PHP attualmente in uso: per esempio '4.1.0'.

PHP_OS

Il nome del sistema operativo sul quale il motore PHP è in esecuzione. Valori possibili possono essere: "AIX", "Darwin" (MacOS), "Linux", "SunOS", "WIN32", "WINNT". Nota: potrebbero essere presenti anche altri valori.

TRUE (case-insensitive)

Un valore TRUE (vedere tipo boolean).

FALSE (case-insensitive)

Un valore FALSE (vedere tipo boolean).

NULL (case-insensitive)

Un valore NULL (vedere tipo boolean).

E_ERROR

Denota un errore differente da un errore di parsing. Non è recuperabile.

E_WARNING

Denota una condizione dove il PHP sa che c'è qualcosa di sbagliato, ma continua comunque l'esecuzione; Queste possono essere gestite dallo script stesso. Un esempio può essere una regexp non valida in ereg().

E_PARSE

Il parser ha incontrato in uno script una sintassi non valida. L'errore non è recuperabile.

E_NOTICE

È accaduto qualcosa che può o può non essere un errore. L'esecuzione continua. Esempi includono: usare una stringa non racchiusa da virgolette come indice di un array o accedere ad una variabile che non è stata definita.

E_ALL

Tutte le costanti E_* racchiuse in una sola. Se usata assieme a error_reporting(), farà si che tutti gli errori rilevati dal PHP siano comunicati.

Le costanti E_* sono tipicamente usate in congiunzione alla funzione error_reporting() per impostare il livello di errori da comunicare. Vedere tutte queste costanti in Gestione errori.

Esempio 9-2. Uso di __FILE__ e __LINE__

<?php
function comunica_errore($file, $linea, $messaggio)
{
    echo "È avvenuto un errore in $file alla linea $linea: $messaggio.";
}

report_error(__FILE__, __LINE__, "Qualcosa è andato storto!");
?>