PHP
HTML
CSS
JavaScript
Generatori
Varie & Old

PHP: Debugging

Debugging in PHP

Il debugging è l’attività di analisi e correzione degli errori presenti in un programma. In PHP disponiamo di strumenti semplici e integrati per osservare variabili, controllare flussi e tracciare eventuali problemi.

Introduzione

Quando uno script non funziona come previsto, è necessario individuare l’origine del problema. In PHP possiamo attivare messaggi di errore più dettagliati, stampare il contenuto delle variabili e utilizzare strumenti esterni come debugger integrati negli editor. Analizziamo i principali strumenti di base.


Uso di var_dump() e print_r()

var_dump() mostra tipo e valore di una variabile, mentre print_r() è utile per leggere array e oggetti in forma leggibile.

Codice Esempio: var_dump e print_r

CODE: PHPpreleva codice
  1. <?php
  2. $numero = 42;
  3. $nomi = ["Mario", "Anna", "Luca"];
  4.  
  5. var_dump($numero);
  6. echo "<br>";
  7. print_r($nomi);
  8. ?>
  9. <!-- Output:
  10. int(42)
  11. Array ( [0] => Mario [1] => Anna [2] => Luca )
  12. -->

Attivare la visualizzazione errori

Per ricevere informazioni più dettagliate sugli errori durante lo sviluppo, è possibile usare error_reporting() e ini_set(). Questo aiuta a scoprire avvisi e notice che altrimenti verrebbero ignorati.

Codice Esempio: mostrare tutti gli errori

CODE: PHPpreleva codice
  1. <?php
  2. error_reporting(E_ALL);
  3. ini_set("display_errors", 1);
  4.  
  5. echo $variabile_non_definita;
  6. ?>
  7. <!-- Output:
  8. Notice: Undefined variable $variabile_non_definita
  9. -->

Uso di debug_backtrace()

La funzione debug_backtrace() fornisce informazioni sul percorso di chiamata delle funzioni e può aiutare a capire come si è arrivati a un certo punto del codice.

Codice Esempio: debug_backtrace

CODE: PHPpreleva codice
  1. <?php
  2. function livello1() {
  3.   livello2();
  4. }
  5.  
  6. function livello2() {
  7.   print_r(debug_backtrace());
  8. }
  9.  
  10. livello1();
  11. ?>
  12. <!-- Output (semplificato):
  13. Array
  14. (
  15.  [0] => Array ( [file] => /percorso/file.php [line] => 6 [function] => livello2 )
  16.  [1] => Array ( [file] => /percorso/file.php [line] => 10 [function] => livello1 )
  17. )
  18. -->

Tabella riassuntiva strumenti base

Funzione Descrizione Uso tipico
var_dump() Mostra tipo e valore dettagliato della variabile. Debug di valori singoli o oggetti.
print_r() Stampa contenuto leggibile di array e oggetti. Controllo rapido di strutture dati.
error_reporting() Configura il livello di segnalazione degli errori. Mostrare notice, warning ed errori durante lo sviluppo.
debug_backtrace() Restituisce informazioni sullo stack delle chiamate. Analisi dei flussi di esecuzione.

Considerazioni

Il debugging in PHP parte da strumenti semplici come var_dump() e print_r(), ma può includere anche debugger avanzati integrati in IDE come PHPStorm o VSCode con estensioni Xdebug. Durante lo sviluppo è utile visualizzare gli errori, mentre in produzione è fondamentale registrarli in log per motivi di sicurezza.


I Cookie su questo sito:

Il nostro sito utilizza cookie e altre tecnologie in modo tale che sia noi, sia i nostri partner, possiamo ricordarci di te e capire come tu e gli altri visitatori utilizzate il nostro sito. Qui puoi trovare ulteriori informazioni sui cookie e le altre tecnologie. Chiudendo questo banner o continuando la navigazione acconsenti all'uso dei cookie. Acconsento Info Cookies