Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Debug gestrore di errori: come provocare un determinato errore

    Salve. Sto programmandomi un gestore personalizzato degli errori. Per il debug, però avrei bisogno di provocare volontariamente degli errori per vedere se funziona (ed anche per la soddisfazione di vederlo all'opera!!!).

    Sapreste indicarmi come provocare ogni tipo di errore generato da php?

    Grazie mille! Ciao!

  2. #2
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  3. #3
    Ma a me non serve trigger error! (credo!).

    Io devo semplicemente provare la classe provocando volontariamente ogni tipo di errore gestibile.

    Per esempio per i notice <?PHP echo $ciao; ?>
    Siccome ciao non è difinita otterrò un parse error.

    Per un errore fatale <?PHP $ciao = ciao(); ?>.
    Richiamando una funzione non definita ottengo un errore fatale.

    E per gli altri? Come si ottengono?

  4. #4
    Ho capito come utilizzare trigger_error() per il mio scopo.

    Leggendo la spiegazione di set_error_handler() ho visto che utilizzo se ne può fare. Grazie mille! Ciao!

  5. #5
    Però ho un altra domanda: con un gestore di errori posso gestire tutti i tipi di errore che php può generare oppure ho delle limitazioni come con trigger_error?

    Se io faccio uno switch del tipo:
    Codice PHP:
    switch ( $errno )
          {
            case 
    E_ERROR:
            echo 
    'c'è stato un e_error';
            break;

            case E_NOTICE:
            echo '
    c'è stato un e_notice';
            break;

            case 
    E_PARSE:
            echo 
    'c'è stato un e_parse';
            break;

            case E_WARNING:
            echo '
    c'è stato un e_warning';
            break;

            case 
    E_CORE_ERROR:
            echo 
    'c'è stato un e_core_error';
            break;

            ecc...
          } 
    Funzioneranno tutti i case oppure solo notice, warning e error?

  6. #6
    e' in PHP5 ma vedi se puo' tornarti comoda per spunti

    http://www.devpro.it/php5_id_12.html
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Si, infatti, un ulteriore esempio mi darà sicuramente una mano in più! Grazie! Ciao!

  8. #8
    gli unici tipi di errore che puoi gestire sono quelli di tipo NOTICE e WARNING. Per quelli di tipo ERROR non c'è nulla che si può fare poiché lo script viene interrotto.
    Per causare un NOTICE ti basta un:
    echo $var_non_definita;
    per un WARNING puoi usare un:
    include('file che non esiste');


  9. #9
    Quindi anche utilizzando la classe da me creata gli altri tipi di errore non li posso gestire?

    Per esempio se si verificasse un fatal error non potrei gestirlo?

  10. #10
    [supersaibal]Originariamente inviato da mircov
    Quindi anche utilizzando la classe da me creata gli altri tipi di errore non li posso gestire?

    Per esempio se si verificasse un fatal error non potrei gestirlo? [/supersaibal]
    no

    se però hai necessità di usare delle tecniche che possono dar vita a dei fatal error allora ci sono degli "stratagemmi" per ovviare al problema (ma la cosa ci porta lontano...)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.