2013-07-18 6 views
9

Ho cercato molto per questo problema durante il debug di php usando PhpStorm con xdebug, ho trovato 3 o 4 link per discutere di questo problema, ma nessuno di loro è utile.La mia versione di Xdebug è 2.2.3, e PhpStorm'version è 6.03. Potrei eseguire il debug di ogni passo per passo la linea tranne questoXdebug PhpStorm: In attesa di connessione in entrata con chiave ide

$this->link = mysql_connect($this->dbserver, $this->dbuser, $this->dbpass); 

PhpStorm mostra questo errore: In attesa di connessione in ingresso con chiave ide "14841". Ecco la mia configurazione xdebug:

zend_extension="/usr/lib/xdebug.so" 
xdebug.remote_autostart=1 
xdebug.show_local_vars=1 
xdebug.dump.GET=* 
xdebug.dump.POST=* 
xdebug.dump.SERVER=* 
xdebug.auto_trace=On 
; default trace output directory /tmp 
xdebug.collect_vars = On 
xdebug.trace_output_dir=/tmp 
xdebug.collect_params=4 
xdebug.collect_return=On 

xdebug.profiler_enable=Off 
; default trace output directory /tmp 
;xdebug.profiler_output_dir=/tmp 
;xdebug.profiler_enable_trigger=On 
;test.php?XDEBUG_PROFILE 
xdebug.remote_enable=On 
xdebug.remote_host="localhost" 
xdebug.remote_port=9001 
xdebug.remote_handler="dbgp" 
xdebug.remote_log = "/tmp" 
xdebug.remote_connect_back=1 
xdebug.idekey=PHPStorm 

aggiungo queste righe "xdebug.remote_connect_back = 1 xdebug.idekey = PhpStorm", anche resistito ide, è sempre lo stesso assicuro che i tre parametri siano corretti .

risposta

4

Hai scritto:

PhpStorm shows this error:Waiting for incoming connection with ide key "14841".

Ma si utilizza:

xdebug.idekey=PHPStorm 

Queste chiavi IDE devono corrispondere. PHP Storm è un po 'strano a riguardo.

Ma poi ha anche detto:

I could debug every line step by step except this one

$this->link = mysql_connect($this->dbserver, $this->dbuser, $this->dbpass); 

Come sono diversi? C'è un comportamento diverso, o semplicemente non si ferma?

+0

Grazie, ho trovato la causa più tardi, ho notato che ho dimenticato di installare mysql.so extension.so questa funzione non è riuscita. –

+13

Ok, ma come si fa a usare phpstorm l'idekey "PHPStorm" piuttosto che un numero casuale? – Andrew

+0

Questo non ha nulla a che fare con sopra. Per favore controlla il mio post sotto –

1

Stavo riscontrando un problema simile in un'installazione locale. ho riparato deselezionando l'impostazione: Mapping Utilizzo Path

trovato sotto Impostazioni> Lingue & Frameworks> PHP> Server

+0

Questo era il mio problema Grazie! – racl101

+0

Perché pensi di averlo risolto? Non hai usato nessun link simbolico? – RichieHH

6

Per me, il debugger non collegati e ho visto il In attesa di connessione in entrata con ide chiave messaggio perché ho impostato la configurazione del server sulla porta 9000. Questa dovrebbe essere impostata sulla porta 80 (o qualsiasi altra porta che il server sta ascoltando! Questo mi ha confuso perché è proprio accanto al menu a discesa Debugger e ho capito era per impostare la porta Xdebug.

You do NOT want to set this value to the debug port

La porta di debug è configurata in Impostazioni-> Languagues & Frameworks-> PHP> Debug. Impostalo su 9000 o su qualsiasi configurazione tu abbia configurato php.ini.

Set Debug port to 9000 in PHP Debug settings

Solo una nota, stavo usando IntelliJ IDEA, ma è tutta la piattaforma di JetBrains.

0

Ho avuto un problema simile. Nel mio caso è stato causato dall'incomprensione delle modalità di debug PHP di PHP/IntelliJ.Ci sono due modalità:

  1. debugging "Locale" PHP
  2. PHP "Remote" debugging

Quando si utilizza il debug "locale", chiave di IDE è generato automaticamente

Questo significa che i primitivi bookmarklet creati a http://www.jetbrains.com/phpstorm/marklets/non funzioneranno in modalità locale: il bookmarklet contiene una chiave IDE hardcoded, ma PHPStorm genererà un rand om uno!

La soluzione è abilitare la modalità di debug PHP "remoto" (attualmente è chiamata "Debug remoto PHP") in "Configurazioni Esegui/Debug" e impostare la chiave IDE nel riquadro destro della configurazione di avvio della creazione.

"Il proxy DBGp" nelle impostazioni globali non è probabilmente quello che vuoi; creare una configurazione di debug "Remote" e impostare lì la chiave IDE.