Oddio, per rispondere completamente alla domanda, fare "if ( $undefined == 'qualcosa' )" non è sbagliato. Se var non è definita allora viene interpretata come valore NULL, quindi il tuo programma funziona come ti aspetteresti. Sembra che non ci siano problemi, ma potrebbero comunque saltare fuori. Soprattutto quando diventa una abitudine. Ti devi mettere sempre in condizione di lavorare con variabili che esistono, ed è il motivo per cui compare quel notice fastidioso. Dopotutto stai facendo una cosa piuttosto strana, sia dal punto di vista dell'interprete, che ti informa con questo errore di basso livello, sia dal punto di vista di un altro programmatore, che avrà da farsi ben più di un paio di domande . E' fortemente raccomandato verificare sempre l'esistenza della variabile prima di usarla per fare confronti o altro. Altrimenti potresti trovarti di fronte a comportamenti imprevedibili, il tuo programma potrebbe non lavorare come ti aspetteresti, e il debug potrebbe richiedere più tempo di quanto servirebbe. Dopotutto se ti aspetti che una variabile possa o non possa esistere, ha decisamente senso verificare che sia definita prima di utilizzarla nel contesto in questione. E se un giorno includerai quel file da un altra parte, chissà cosa può succedere. Non puoi trattare una variabile indefinita impunemente.