我知道这听起来很奇怪,但请相信我,这就是发生的事情.这是我的系统设置:
Windows7
Apache 2.2
PHP 5.2.12
Xdebug 2.0.5
我在PHP.ini文件中配置了XDebug.当我运行php -m时,我确实看到Xdebug已加载.现在,如果我启动Apache AS A SERVICE(或Apache Monitor),并运行phpinfo(),它不会显示Xdebug被加载.
然而,(现在这里的疯狂部分),如果我去我的Apache bin目录,并简单地运行httpd.exe,然后去看看phpinfo()函数,Xdebug的现在显示为被装!
此外,比较一些phpinfo()在通过服务或命令行启动时,看起来php.ini文件对于任何一种情况都是相同的.除了装载Xdebug的部件外,一切看起来都一样.
请,如果您有任何想法,将不胜感激.
我在php.ini中添加了以下行
[XDebug]
zend_extension = C:\PROGRA~1\PHP5\ext\php_xdebug-2.1.0-5.3-vc9.dll
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
Run Code Online (Sandbox Code Playgroud)
版本php_xdebug-2.1.0-5.3-vc9.dll可通过页面http://www.xdebug.org/find-binary.php获得.
但是在输出中没有提到'xdebug'字符串phpinfo().
有什么不对?
(这是我第二次用php-xdebug开始工作,第一次放弃工作.如果你有其他有关调试的建议,请添加它们,可能作为对问题的评论.我想在windows下关注场景工作:"设置断点,运行我的脚本,它在断点处停止,我可以看到一些变量的值".谢谢)
UPDATE
重新启动Apache无法解决问题.在日志文件中显示消息:
配置Apache/2.2.14(Win32)PHP/5.3.1 - 恢复正常操作