我正在使用netbeans 7.3来调试我的laravel 3.2项目。我无法让xdebug工作,因为它不会在断点处停止(BTW相同的设置与codeigniter项目一起工作正常,所以我不认为它是IDE或xdebug)。
我在项目属性 - >运行配置对话框中设置了以下参数:
project URL: http://localhost/my_project/public/my_controller
index file: blank
arguments: blank
它运行正常,它只是xdebug不起作用。有人可以帮我一把吗?
我的开发堆栈是http://www.easyphp.org/。在我的php.ini文件中,我有:
我刚刚通过定制的安装说明运行了我的phpinfo并获得了:
Tailored Installation Instructions
Summary
Xdebug installed: Only as PHP extension!
Server API: Apache 2.4 Handler Apache Lounge
Windows: yes - Compiler: MS VC9 - Architecture: x86
Zend Server: no
PHP Version: 5.4.6
Zend API nr: 220100525
PHP API nr: 20100525
Debug Build: no
Thread Safe Build: yes
Configuration File Path: C:\Windows
Configuration File: F:\EZPHP\apache\php.ini
Extensions directory: F:\EZPHP\php\php546x130301155435\ext
Instructions
Warning: You seem to have Xdebug loaded as a normal PHP extension only. This will cause odd issues, please see the FAQ entry on it.
Download
Move the downloaded file to F:\EZPHP\php\php546x130301155435\ext
Edit F:\EZPHP\apache\php.ini and add the line
zend_extension = F:\EZPHP\php\php546x130301155435\ext\
Restart the webserver
我试过这个,但我注意到它没有说要下载哪个版本。我下载了32位线程安全版本,现在位于php.ini的底部:
Xdebug
;zend_extension = "${path}\php\php546x130301155435\php_xdebug-2.2.1-5.4-vc9.dll"
zend_extension = "F:\EZPHP\php\php546x130301155435\ext\php_xdebug-2.2.2-5.4-vc9.dll"
xdebug.default_enable=0
xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_autostart = false
xdebug.dump_globals=1
xdebug.dump=COOKIE,FILES,GET,POST,REQUEST,SERVER,SESSION
xdebug.dump.SERVER=REMOTE_ADDR,REQUEST_METHOD,REQUEST_URI
xdebug.show_local_vars=1
xdebug.show_mem_delta=1
xdebug.collect_includes=1
xdebug.collect_vars=1
xdebug.collect_params=4
xdebug.collect_return=1
xdebug.auto_trace=0
xdebug.trace_options=0
xdebug.trace_format=0
xdebug.trace_output_dir="${path}\xdebug\trace"
xdebug.trace_output_name="trace.%t"
xdebug.profiler_enable=0
xdebug.profiler_append=1
xdebug.profiler_enable_trigger=1
xdebug.profiler_output_dir="${path}\xdebug\profiler"
xdebug.profiler_output_name="cachegrind.out.%s.%t"
;/Xdebug
;PHPExt
extension=php_bz2.dll
extension=php_curl.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_exif.dll
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_oci8_11g.dll
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
extension=php_sockets.dll
;extension=php_sqlite.dll
extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
extension=php_xsl.dll
extension=php_yaz.dll
;/PHPExt
按照说明,将文件放在我的文档根目录中
Configuration File (php.ini) Path C:\Windows
Loaded Configuration File F:\EZPHP\apache\php.ini
就像另外一个注意事项,我刚刚发现当我在xdebug_break()
中进行硬编码时会破坏它答案 0 :(得分:0)
打开你的php.ini文件,并通过put来评论php_xdebug.dll;在它面前。所以它看起来像这样:
;extension=php_xdebug.dll
答案 1 :(得分:0)
您确定要查看使用的.ini文件吗?创建一个php文件并添加<?php phpinfo();
在浏览器中打开它,并查看顶部(在“已加载的配置文件”和“解析的其他.ini文件”中列出的顶部块)中的活动.ini文件正在使用。
然后打开该文件,搜索xdebug并注释掉或删除任何包含extension=php_xdebug.dll
的行。
另外,请通过粘贴和验证来验证您是否正确安装了xdebug。在这里提交你的phpinfo()的内容:http://xdebug.org/find-binary.php