PHP.ini的配置文件: [Xdebug] zend_extension_ts="d:/wamp/php/ext/php_xdebug-2.0.4-5.2.8.dll" xdebug.default_enable = On xdebug.profiler_enable=on xdebug.auto_trace=on xdebug.collect_params=on xdebug.collect_return=on xdebug.trace_output_dir="D:\wamp\debugcache" xdebug.profiler_output_dir="D:\wamp\debugcache" xdebug.remote_enable=on xdebug.remote_handler=dbgp debug.remote_mode=req xdebug.remote_host= localhost xdebug.remote_port=9000 xdebug.idekey=ECLIPSE_DBGP xdebug.show_exception_trace=on xdebug.show_local_vars=on xdebug.show_mem_delta=on
[Zend Debugger] zend_extension_manager.debug_server_ts = "D:/WAMP/PHP/Zend" zend_debugger.expose_remotely = allowed_hosts ; always zend_debugger.allow_hosts = localhost,127.0.0.0/254,192.168.1.0/254,192.168.0.0/254
[Zend optimizer] zend_extension_manager.optimizer_ts="D:/WAMP/PHP/Zend" zend_extension_ts="D:/WAMP/PHP/Zend/ZendExtensionManager.dll"
三个独立使用都没有问题,如果在一起就会出现兼容问题
1.Zend optimizer和zend debugger可以同时使用 对于使用Zend加密PHP文件来说,这个是唯一的解决方法,也算比较理想
2.Xdebug和zend debugger不能同时使用 也没有必要同时使用,Xdebug强于zend debugger,主要是提示信息显示很好,在页面出错时候彩色提示页面看起来很明朗,最重要可以输出效能检测文件,用wincachegrind查看很 明显可以看出php执行效率,已经不仅仅是debug出错,重要可以看到效率瓶颈
3.Xdebug和Zend optimizer同时使用问题 xdebug的官方手册中指出xdebug应当作为zend extension加载,这样的话就会xdebug就不能和任何使用zend extension一起使用,也就是包括Zend optimizer,否则会冲突,导致Apache无法启动。
如何让xdebug与ZendOptmizer共存呢?解决方法就是不以zend extension的形式加载xdebug,用加载常规扩展的方法。把xdebug的dll文件放入php的ext文件夹中,然后在php.ini中加 入:extension=php_xdebug-2.0.4-5.2.8.dll
这样xdebug就能与ZendOptmizer共存了,phpinfo()里会提示:XDEBUG NOT LOADED AS ZEND EXTENSION,实际运行结果,可以加载成功并且由eclipse给xdebug发送调试开始和结束信号的,也能输出效能监测文件但无法断点,对于开 发来说,没有断点差不多等于没有用,也就是说这种解决方法是很不理想,差不多不实际
通过这样比较,所以目前只能是使用Zend optimizer和zend debugger,zend debugger的官方下载地址:http://downloads.zend.com/pdt/server-debugger/