PHP Notice

Scrivendo codice php può capitare di imbattersi in un messaggio di sistema che ci arriva direttamente dal php, del tipo:

Notice: Undefined index: action in [vostro url] on line 5

Solitamente si verificano quando si richiama una variabile che non esiste o una chiave di array che non c’è.
Sarebbe buona norma riuscire a fare codice “notice free” ma questo richiede molta cura e attenzione. Ci sono allora vari sistemi per disabilitare questi messaggi:

- controllando l’esistenza della chiave prima di accedervi (usando isset($variabile[$chiave]) o sistemi alternativi);

- richiamando la funzione error_reporting(E_ALL ^ E_NOTICE) (solitamente
all’inizio del proprio script);

- impostando error_reporting = E_ALL & ~E_NOTICE nel php.ini (occhio che
questa modifica influenza TUTTI i tuoi script);

Se proprio non posso evitare l’errore, piuttosto che modificare il php.ini preferisco inserire nella pagina dello script:

error_reporting(E_ALL ^ E_NOTICE);

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • LinkedIn
  • RSS
  • StumbleUpon
  • Twitter
  • Reddit

One Response to

  1. Matteo Papadopoulos says:

    Errata corrige:
    era stato indicato

    E_ALL ^ E_NOTICE

    ma non è corretto.
    La versione corretta epr eliminare i messggi di notice è:

    E_ALL & ~E_NOTICE

Post a comment