Esiste un debugger interattivo per il debugger di php come Ruby?


9

Ho guardato il Creating a weblog in 15 minutes with Rails 2 e dopo 9 minuti nel video mostra il debugger interattivo di Ruby, che consente di chiamare funzioni/metodi da uno script in esecuzione.

Questo va ben oltre i punti di interruzione e sembra molto utile.

C'è qualcosa per PHP che offre funzionalità simili?

+3

Vuoi dire che non vuoi usare il metodo echo ... rispettato? Eresia! 22 feb. 092009-02-22 15:03:55

2

Sebbene l'Milen's answer sia l'unico corretto per il 2009 e Xdebug sia ancora uno strumento utile, utilizzarlo richiede la ricompilazione del PHP o la modifica della configurazione di runtime php.ini per caricarla come oggetto condiviso. Significa anche utilizzare un'applicazione client specifica che supporta il suo protocollo di rete, come un IDE come PhpStorm.

Un'alternativa è phpdbg, che è un debugger interattivo che è ships with PHP core versions 5.6 and later e può eseguire il debug di script PHP scritti per conformarsi a PHP 5.4 o versioni successive.

Usarlo è semplice:

phpdbg php_script_i_want_to_debug.php 

volta nel debugger, tipo help per accedere al menu di aiuto.

Se non si dispone già del phpdbg nel sistema, è possibile che il PHP sia stato configurato senza l'opzione --enable-phpdbg. È possibile:

  1. ricompilare il PHP, avendo cura di aggiungere --enable-phpdbg quando si esegue ./configure (questo sarà sufficiente anche costruire il binario phpdbg), o
  2. scaricare il codice sorgente phpdbg in modo indipendente e compilarlo contro il tuo PHP installato (assumendo che tu abbia la sorgente PHP disponibile). Le istruzioni per farlo, mentre sparse, sono here.

8

Installare xdebug e quindi utilizzare uno dei client di debug menzionati here.