我正在尝试使用 eclipse 让 zend 调试器唤醒,以便我可以在我的代码中触发断点。
我已经安装了 wamp 2.2(使用 PHP 5.3.10 - 线程安全(
我已经从 zend 安装了 eclipse"多合一"软件包。
我已经更新了我的 php.ini 以包含
zend_extension = "c:/wamp/bin/php/php5.3.10/zend_ext/ZendDebugger.dll"
[Zend]
zend_debugger.allow_hosts="127.0.0.1"
zend_debugger.expose_remotely=always
当我启动我的php时.exe它显示
Cannot load Zend Debugger - it was build with configuration API220090626,NTS,VC9, whereas running engine is API2200090626,TS,VC9
我已经读到ZendDebugger只能作为非线程安全工作,所以我不能只下载ts版本。我找不到 php 5.3.10 (http://windows.php.net/download/( 的下载链接
但是,当我尝试用 5.3.13 (nts( 替换我的 php 副本时,我的 sqlsrv 扩展不兼容,并且出现错误
PHP Startup: Unable to load dynamic library 'c:wamp/bin/php/php5.3.10/ext/php_sqlsrv_53_nts.dll' - %1 is not a valid Win32 application
如果我更改我的 php.ini 不加载 sqlsrv 扩展,我仍然会收到错误
Failed loading c:/wamp/bin/php/php5.3.10/zend_ext/ZendDebugger.dll
有谁知道我如何让调试与Zend Framework,Eclipse,wamp和sqlserv一起工作?
NTS无法加载Zend调试器 - 它是使用配置API220090626,NTS,VC9构建的,而运行的引擎是API2200090626,TS,VC9
的意思是非线程安全,因此你必须使用PHP的NTS构建。这就是你如何运行PHP作为FCGI进程(相对于通过mod_php的Apache Thread(。
Zend 通常不再提供或支持任何 TS 构建(因为在 PHP 5.2 之后(,看起来您的设置是为 TS 构建准备的......
您可以尝试两件事:
使用随 PHP 作为 FCGI (NTS( 选项附带的 WAMP(我知道最新版本的 Wamp-Developer 有,但它是商业的,也许看看 XAMPP 或其他 Wamp 是否这样做?
或者尝试使用 XDebug,而不是 ZendDebugger。它随着 TS 和 NTS 的构建而出现。我相信你可以用Eclipse和它一起使用。