di: Claudio Garau 13 Novembre 2008
La gestione delle eccezioni consente non soltanto di ricevere notifiche dall'esecuzione di un'applicazione nel caso in cui vengano generati comportamenti non previsti (come per esempio i malfunzionamenti), ma anche di raccogliere dettagli relativi alla tipologia di errore verificatosi; per massimizzare l'utilità delle eccezioni, è sufficiente osservare alcune semplici regole che consentono di impiegare questo strumento in modo più proficuo permettendo agli script di inviare notifiche contenenti informazioni precise da utilizzare nelle fasi di sviluppo, produzione ed eventualmente di correzione.
Come è noto, PHP integra nativamente un sistema abbastanza completo per la gestione delle eccezioni con particolare attenzione verso gli errori prodotti dall'esecuzione degli script, se nel codice digitato manca un ; (punto e virgola) per la chiusura di un'istruzione o una variabile viene considerata una costante non definita perché manca del simbolo $ (simbolo del dollaro), PHP è in grado di segnalare il problema e di indicare all'utilizzatore la riga coinvolta.
Ma le eccezioni non sono necessariamente degli "errori" nel codice, più semplicemente possono anche essere dei comportamenti non voluti o degli esiti non previsti in seguito ad una richiesta da parte di un client. Se per esempio un utilizzatore richiede di accedere ad un determinato file e questo non è più disponibile sul server non è possibile dire che questo sia il risultato di un errore in sede di sviluppo, soprattutto se l'applicazione è stata dotata di accorgimenti in grado di gestire questo tipo di eccezione.
Le eccezioni possono quindi essere anche uno strumento valido per inviare informazioni importanti all'utenza e in generale a chi non ha la possibilità di accedere direttamente al codice sorgente degli script. Un modo molto semplice di gestire le eccezioni all'interno di un'applicazione è quello di utilizzare le istruzioni condizionali, un comune blocco IF - ELSE consente di ricavare alcune informazioni riguardo agli esiti delle esecuzioni.
Il listato contenuto nello script seguente rappresenta un esempio di elementare gestione delle eccezioni:
<?php # definizione della funzione function dividi($n) { # blocco condizionale if (!$n) { throw new Exception("Division by zero."); } # valore di ritorno della funzione else return 10/$n; } # esecuzione della funzione try { echo dividi(10); echo "<br/>\n"; echo dividi(0); echo "<br/>\n"; # gestione dell'eccezione } catch (Exception $e) { echo "Rilevata eccezione: ". $e->getMessage(); } # codice al di fuori della gestione delle eccezioni echo "<br/>\n"; echo "Html.it"; ?>
Il codice proposto determina una serie di semplici comportamenti:
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Zend FrameworkDiventate professionisti dello sviluppo Web. Zend Framework è lo... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |