In breve: PHP undefined constant indica che il codice usa una costante mai definita, definita troppo tardi oppure un identificatore che doveva essere una stringa tra virgolette.
Indice dei contenuti
PHP undefined constant: significato
Le prime ipotesi da verificare per “PHP undefined constant” sono nome della costante errato o differenza tra maiuscole e minuscole; chiamata a define() non eseguita prima dell’uso.

Sintomi e cause probabili
Sintomi da verificare
- Il log mostra Uncaught Error: Undefined constant seguito dal nome interessato.
- L’esecuzione si interrompe nel file e nella riga indicati dallo stack trace.
- Il problema compare dopo il passaggio a PHP 8 o dopo un aggiornamento del codice.
- Solo il percorso che usa quella costante restituisce errore.
Cause probabili
- Nome della costante errato o differenza tra maiuscole e minuscole
- Chiamata a define() non eseguita prima dell’uso
- Stringa o chiave di array scritta senza virgolette in codice legacy
- Namespace o file incluso diverso da quello previsto
Diagnosi passo per passo
- Leggere nel log il nome esatto della costante, il file e la riga
- Cercare dove la costante dovrebbe essere definita e verificare l’ordine di caricamento
- Controllare namespace, condizioni e differenze di maiuscole
- Confrontare il comportamento con la versione PHP precedente in staging
- Ripetere la richiesta dopo una sola modifica
Log e dati da controllare
- error_log PHP
- Stack trace
- Versione PHP attiva
- File che definisce e file che usa la costante
Correzioni sicure
- Correggere il nome della costante e caricare la definizione prima dell’uso
- Racchiudere tra virgolette le stringhe che non sono costanti
- Usare defined() soltanto quando l’assenza della costante è prevista
- Aggiornare il plugin o il tema se il codice legacy non supporta PHP 8
- Verificare la correzione in staging prima della pubblicazione

Verifica finale
- La stessa richiesta termina senza Undefined constant
- Il valore della costante è quello previsto
- Il log non mostra nuovi errori
- Le funzioni collegate restano operative
Errori da evitare
- Definire una costante globale casuale per eliminare il messaggio
- Disattivare la visualizzazione dei log come unica correzione
- Modificare direttamente un plugin senza conservarne la patch
- Confondere una stringa con una costante
Guide Xlogic correlate
- PHP Fatal error: Uncaught ArithmeticError
- PHP Fatal error: Uncaught TypeError argument type
- PHP Fatal error: Uncaught ValueError in WordPress
Fonti tecniche
Domande frequenti
Che cosa significa “PHP undefined constant”?
PHP undefined constant indica che il codice usa una costante mai definita, definita troppo tardi oppure un identificatore che doveva essere una stringa tra virgolette.
Da cosa può dipendere “PHP undefined constant”?
Le cause da verificare per “PHP undefined constant” sono: nome della costante errato o differenza tra maiuscole e minuscole; chiamata a define() non eseguita prima dell’uso; stringa o chiave di array scritta senza virgolette in codice legacy.
Quali controlli eseguire per “PHP undefined constant”?
Per diagnosticare “PHP undefined constant”, controlla nell’ordine: leggere nel log il nome esatto della costante, il file e la riga; cercare dove la costante dovrebbe essere definita e verificare l’ordine di caricamento; controllare namespace, condizioni e differenze di maiuscole. La soluzione è confermata quando la stessa richiesta termina senza Undefined constant; il valore della costante è quello previsto.