Come faccio a fare il debug di un errore PHP?

1

Vengo da .NET a PHP. Sto giocando con un lungo file scritto da qualcun altro (chiamato "cryptographp.inc.php"). Costruisce e restituisce un'immagine al browser.

Voglio mostrare l'immagine che il file restituisce sulla mia pagina Cryptocode / index.php - in questo modo:

<?php
include './cryptographp.inc.php'; 
?>

Ma quando carico la pagina, firefox restituisce un errore che dice

"The image http://localhost/Cryptocode cannot be displayed because it
contains errors"

Come faccio a fare il debug di un errore come questo in PHP? Sono abituato a passare il codice nello studio visivo. Quali tecniche useranno le persone nel mondo PHP?

    
posta Bernie2436 20.08.2013 - 23:01
fonte

1 risposta

4

In breve: vorrei iniziare abilitando il mio ambiente di sviluppo a rilevare gli errori. Ci sono alcune impostazioni che dovresti impostare.

Per gli errori di sintassi , devi abilitare la visualizzazione degli errori nel php.ini. Per impostazione predefinita, questi sono disattivati perché non vuoi che un cliente veda i messaggi di errore. Controlla questa pagina nella documentazione di PHP per informazioni sulle 2 direttive: error_reporting e display_errors . display_errors è probabilmente quello che vuoi cambiare. Se non riesci a modificare il php.ini, puoi anche aggiungere le seguenti righe a un file .htaccess:

php_flag  display_errors        on
php_value error_reporting       2039

Potresti considerare di usare il valore di E_ALL (come detto da Gumbo) per la tua versione di PHP per error_reporing per ottenere tutti gli errori. maggiori informazioni

Tre punti importanti da considerare:

  1. Controlla il file di log degli errori dato che avrà tutti gli errori (a meno che la registrazione non sia stata disabilitata).

  2. L'aggiunta delle seguenti 2 linee aiuterà a eseguire il debug degli errori che non sono errori di sintassi:

    error_reporting (-1); ini_set ('display_errors', 'On');

  3. Utilizza un editor che verifica la presenza di errori per cui digiti, ad esempio PhpEd . Inoltre viene fornito con un debugger che può fornire informazioni più dettagliate. (Il debugger di PhpEd è molto simile a xdebug e si integra direttamente nell'editor in modo da utilizzare un programma per fare tutto). " xdebug " renderà i tuoi rapporti molto più piacevoli.

Il link di Cartman ha anche ottime linee guida da seguire: link

Riferimenti e post del blog:

risposta data 20.08.2013 - 23:27
fonte

Leggi altre domande sui tag