Debug con Eclipse!

Ciao a tutti,

Vorrei utilizzare Eclipse per effettuare il debug di un applicazione ralizzata con YII, sapete come configurare il tutto? ho fatto vari tentativi senza alcun successo…

sarebbe molto interessante.

se qualcuno lo ha già fatto puo’ darci una dritta.

Io non lo uso… vedi se questo link ti aiuta - http://tipstank.com/2010/12/15/how-to-debug-your-phpunit-unit-tests-in-eclipse/

L’o trovato in questo thread inglese - http://www.yiiframework.com/forum/index.php?/topic/17333-yii-debuging-using-eclipse/page__p__85913__hl__eclip+e+debug#entry85913

ok visionerò i link e farò dei test sperando di "postare" una soluzione buona per tutti…

SOLUZIONE

configurato eclipse con xdebug è perfetto!!!

scarichiamo eclipse (pdt) ossia la versione x php e xdebug (xdebug.org)la mia configurazione si basa su XAMPP

iniziamo:

  1. attiviamo XDEBUG in php, per fare questo se abbiamo scaricato la libreria XDEBUG dal sito dobbiamo copiare il dll ossia php_xdebug.dll all’interno della cartella ext di php. Nel mio caso c:/xampp/php/ext

  2. il secondo passo prevede la configurazione di php.ini, ossia dire a php su quale porta si trova xdebug ecc… quindi tramite un editor aprire il file php.ini (c:/xampp/php/php.ini e rimuoviamo il ";" che si trova davanti alla direttiva zend_extension e togliamo inoltre il commento ";" davanti alle seguenti proprietà:

xdebug.remote_enable=On

xdebug.remote_host="localhost"

xdebug.remote_port=9000

xdebug.remote_handler="dbgp"

Fatto questo il nostro server è a posto! stoppiamo e riavviamo APACHE

  1. decomprimiamo il pacchetto eclipse in una cartella in C ed avviamo l’eseguibile

  2. dare un nome al workspace dove si troveranno tutti i nostri progetti

  3. all’apertura di eclipse dal menu windows–> preferences -> PHP -> PHP Executables clicchiamo il pulsante di destra ADD si aprirà una finestra in cui andremo ad inserire:

      name = PHP
    
    
      executable path = c:\xampp\php\php-cgi.exe
    
    
      PHP ini file = c:\xampp\php\php.ini
    
    
      SAPI Type = CGI
    
    
      PHP debugger = XDebug
    

cliccare su OK

  1. ndiamo infine in window -> preferences -> PHP -> Debug e impostiamo i valori seguenti

    PHP Debugger = XDebug CONFIGURAAAAAA

    server = default php web server

    PHP Executable PHP

    encoding lasciare come sta UTF-8

    Break at fist line cliccato!

fare OK ed il gioco è fatto!!!

Se come è successo a me capita un errore di versionamento di XDebbug controlla su CONFIGURAAAAA la porta settata port = 9000 deve essere la stessa che avete inserito nel php.ini è ovvio che la potete cambiare l’importante è che sia la stessa ambo le parti!!!

  1. Da eclipse crea un nuovo progetto, dategli il nome, cliccare il percorso dove si trova il progetto ovviamente quello chreato con YIIC che sarò C:/xampp/htdocs/nomeprogetto e vi farà l’import della struttura!

navigate tra i file mettete un break point, avviate il debug dandogli localhost/nomeprogetto/index.php e il gioco è fatto potrete visionare passo passo ogni variabile!!!

ciao a tutti

Per completare le informazioni volevo ancora aggiungere, che un’altra funzionalità molto comoda di eclipse è l’auto completamento del codice: basta iniziare a scrivere il comando, il nome del’oggetto o altro e premere ctrl.

Per attivarla bisogna aggiungere il framework al DLTK di eclipse.

Basta fare così:

cliccare col tasto destro sul nostro progetto yii

scegliere Properties

cliccare sulla treeview la sezione PHP Include Path

selezionare il tab Libraries

premere il tasto Add Externarl Source Folder

e selezionare la directory contenente il framework, ad esempio:

I:\prova\yii-1.1.8.r3324\framework

Io son partito da un’installazione base di eclipse e ho poi aggiunto il plugin per la gestione di php

http://wiki.eclipse.org/PDT/Installation

ma dovrebbe funzionare anche con quella descritta qui.

Ciao

Ho provato a seguire le istruzioni di webby per creare un ambiente nuovo,

ma ho incontrato un piccolo intoppo.

Vado a spiegare:

Ho installato la versione di eclipse per php da qui:

http://code.google.c.../downloads/list

Ho installato la versione di xampp da qui:

http://www.apachefri…pp-windows.html

ho scaricato la versione zip perché ho letto in giro che funziona molto bene anche su win7 (ed è vero, funziona)

per capire il modulo esatto di xdebug da scaricare compatibile con la versione di php sono andato su:

http://localhost/xampp/index.php

ho cliccato su phpinfo

ho copiato tutta la pagina di risposta dentro la textarea dell’url:

http://xdebug.org/find-binary.php

ho premuto il tasto:

analyse my phpinfo

e lo script mi ha indicato esattamente cosa scaricare.

in che cartella copiare lo script e dove si trova il file php.ini da modificare

e combaciava esattamente con le spiegazioni di webby, tranne per il fatto che nel mio ini non ci sono le 4 linee:




xdebug.remote_enable=On

xdebug.remote_host="localhost"

xdebug.remote_port=9000

xdebug.remote_handler="dbgp"



che io ho aggiunto subito dopo la linea

zend_extension = C:\xampp\php\ext\php_xdebug-2.1.2-5.3-vc9.dll

ho aggiunto il punto di debug su index.php sulla prima linea del framework yii,

ma l’esecuzione va avanti tranquilla, ignorando il breakpoint

Qualche idea?

Quando debuggate, puntate localhost oppure localhost:9000 ?

ciao, io non ho usato Mamp o Lamp, io ho installato tutto su un server Linux, se ti può aiutare, ti dico le mie impostazioni

ti posso dire solo che io nel php.ini ho messo questo




; XDebug

zend_extension="/usr/lib/php5/20090626/xdebug.so"

xdebug.remote_enable=true

xdebug.remote_enable=1

xdebug.remote_handler=dbgp

xdebug.remote_host=192.168.1.128

xdebug.remote_port=9000



dove zend_extension = il percorso lo trovi dentro xDebug.ini che nel mio caso è dentro (etc/php5/conf.d/xdebug.ini)

credo comunque che puoi scrivere direttamente anche dentro xDebug.ini, ma io ho scritto dentro php.ini

xdebug.remote_host = Ip della mia macchina locale

Per vedere se è tutto ok, guarda se ti ha caricato Xdebug nel phpinfo()

dopo di che su Eclipse ho fatto così:

  • Help–> Install New Software…

-open the dropDownList "work with"

-select "–All Available Sites–"

-On the filter text field put: php

-Check out: "Programming Languages"

-Check out: "Web, XML, and Java EE Development"

-Follow the wizard instruction until finish

-On the eclipse main menu go to: Window–> Preferences

-Navigate on the tree menu to: PHP–> Debug

-open the dropDownList "work with"

-On "PHP Debugger" select "XDebug"

-Leave alone "Server" and "PHP Executables"

-Save changes and close the window

-On the eclipse main menu go to: Run–> Debug configurations…

-Do a double click over "PHP Web Page" just to add a new setting

-On the DropDowList "Server Debugger" select "XDebug"

-On the file section browse and select the "index.php" of your project or whatever file you need to start your application

Fammi sapere se hai qualcosa di nuovo.

quello che non riesco a fare è debuggare ad esempio un controller, la view è facile ma il controller ovviamente mi da Forbidden