Login
Libri
Home Argomenti Generali Gestione degli Errori

Gestione degli Errori

Share

Seguendo le funzioni descritte di seguito CodeIgniter permette di realizzare messaggi di errore all'interno delle proprie applicazioni. Inoltre, attraverso una classe di error log, permette di salvere i messaggi di errore e quelli di debugging in file di testo.

Nota: Di default, CodeIgniter mostra tutti gli errori PHP. Si potrebbe voler modificare questo comportamento una volta che la fase di sviluppo è completa. Troverete la funzione error_reporting () situato nella parte superiore del file index.php. Disabilitare la segnalazione degli errori non impedirà di scrivere il file di registro in caso di errori.

A differenza di molti sistemi,  in CodeIgniter le funzioni di errore sono semplici interfacce procedurali disponibili a livello globale in tutta l'applicazione. Questo approccio permette di innescare messaggi di errore senza preoccuparsi di definire classi/funzioni.

La seguenti funzioni permettono di generare errori:

show_error('message' [, int $status_code= 500 ] )

Questa funzione mostrerà il messaggio di errore assegnato utilizzando il file di template degli errori:


application/errors/error_general.php

Il parametro opzionale $status_code determina quale codice di stato HTTP deve essere inviato con l'errore.

show_404('page')

Questa funzione mostrerà il messaggio di errore 404 disponibile usando il seguente template:


application/errors/error_404.php

La funzione si aspetta come partametro una stringa che sarà il path della pagina non trovata. CodeIgnityer mostra già il messaggio 404 quando non trova un controller.

log_message('level', 'message')

Questa funzione permette di scrivere messaggio all'interno dei propri file di log.This function lets you write messages to your log files. E' necessario indicare quale dei tre "livelli" è il primo parametro, specificando così di che tipologia è il messaggio (debug, errore, info), con il messaggio passato come secondo parametro. Per esempio:


if ($some_var == "")
{
log_message('error', 'Some variable did not contain a value.');
}
else
{
log_message('debug', 'Some variable was correctly set');
}

log_message('info', 'The purpose of some variable is to provide some value.');

Ci sono tre tipi di messaggi:

  1. Messaggi di errore. Questi errori effettivi, come quelli di PHP o degli utenti.
  2. Messaggi di debug. Questi messaggi sono utili per il debugging dell'applicazione. Per esempio, se una classe è stata inizializzata può essere tracciato come informazione di debug.
  3. Messagi di informazioni. Questi messaggi sono di bassa priorità, danno semplicemente informazioni sul processo. CodeIgniter non genera nativamente nessun tipo di messaggio informativo, ma si possono implementare nelle proprie applicazioni.

Nota: Affinché il file di registro venga effettivamente scritto, la cartella "logs" deve poter essere accessibile in scrittura. In aggiunta, si deve configurare la "soglia" di logging. Per esempio, sarà possibile loggare solo i messaggi di errore e non gli altri due tipi. Se si imposterà 0 il logging verrà disabilitato.

Ultimo aggiornamento ( Sabato 30 Ottobre 2010 13:24 )