Quando sviluppi il tuo codice dovresti avere tutti i segnalazioni di errori in PHP abilitati, comprese le notifiche e gli avvertimenti. Il tuo codice di produzione non dovrebbe mai produrre un errore PHP. In alcuni casi speciali potresti sopravvivere con alcuni Avvisi e Avvisi PHP, ma sul tuo server di produzione dovresti mostrare gli Errori all'utente.
Successivamente, Errori PHP significano che hai qualcosa di veramente incasinato nel tuo codice e tali cose non dovrebbero mai raggiungere la produzione. Qualsiasi quantità di test automatici decenti farà in modo che ciò non accada mai. = > Correzione per chiarezza: "... farà in modo che ciò accada raramente."
Non ti consiglio di trasformare errori, avvisi e avvisi PHP in eccezioni o "FALSE". Mai! Se si verificano sul tuo computer l'applicazione ha un problema serio, quindi non trasformare l'errore in qualcosa che puoi catturare e poi dimenticare / ignorare facilmente.
Quando si verificano situazioni in cui il codice può andare storto, utilizzare la verifica corretta e generare eccezioni. Ancor più, quando possibile, crea la tua eccezione e lancia quella più appropriata per quella situazione.
Ad esempio, invece di lasciare che PHP lanci un "Indice non valido" quando provi a leggere un elemento di un array, puoi fare qualcosa del tipo:
if (!isset($superWeapons['nuclear']))
throw new MissingSuperweaponException('We heave no nuclear weapons awailable!');
Than, da qualche parte a un livello più alto della tua applicazione puoi catturare tutte queste eccezioni e mostrare all'utente i bei messaggi che vuoi.
Si prega di notare che le eccezioni sono per casi eccezionali, per situazioni in cui la vostra applicazione non dovrebbe mai essere. Utilizzare quindi solo quando necessario.
Quando c'è un risultato di un'operazione, un risultato che può essere VERO o FALSO o un valore o una stringa, non è un caso eccezionale, cioè un risultato o un valore di ritorno. Ad esempio, quando si esegue una ricerca per una stringa, il risultato può essere l'indice del testo cercato. Tuttavia, non trovando il testo non è un caso eccezionale, dovresti semplicemente restituire zero o falso, non un'eccezione.