我正在尝试使用eclipse调试zend调试器,以便我可以在代码中触发断点。
我已经安装了wamp 2.2(使用PHP 5.3.10 - 线程安全)
我已经从zend安装了eclipse'all in one'软件包。
我已将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进行调试?
答案 0 :(得分:3)
无法加载Zend Debugger - 它是使用配置API220090626, NTS ,VC9构建的,而运行引擎是API2200090626,TS,VC9
NTS表示非线程安全,因此您必须使用PHP的NTS版本...这是您如何将PHP作为FCGI进程运行(与通过mod_php的Apache线程相比)。
Zend通常不再提供或支持任何TS构建(因为在PHP 5.2之后),看起来你的设置是用于TS构建...
您可以尝试两件事:
使用随PHP附带的WAMP作为FCGI(NTS)选项(我知道最新版本的Wamp-Developer会这样做,但它是商用的,可能会看到XAMPP还是Wamp ?)
或者代替ZendDebugger,尝试使用XDebug。它既有TS又有NTS版本。我相信你可以使用Eclipse。