PHP5环境下Zend Debugger安装配置详解

  Zend Studio调试PHP主要使用Xdebug和Zend Debugger,之前我介绍了 Zend Studio调试工具Xdebug安装教程,今天来说说Zend Debugger的安装与配置方法,目前在PHP5.3 Thread-Safe环境下并不支持Zend Debugger的安装与配置,PHP5.3 Non-Thread-Safe的运行环境是支持的。

  如果想要在PHP5.3环境下安装配置Zend Debugger有两种方式,一种是将PHP环境配置为PHP5.3 Non-Thread-Safe,另一种是安装Zend Server。为了方便,我干脆将PHP运行环境切换为IIS7下的PHP.5.2,因为PHP5版本不同并不影响Zend Debugger的安装配置过程。

  Zend Debugger下载地址

  在进行Zend Debugger安装配置之前需要下载Zend Debugger,Zend Debugger的下载地址费了我不少时间,主要有三个:

  Zend Debugger下载地址1Zend Debugger下载地址2Zend Debugger下载地址3

  Zend Debugger下载地址说明:推荐点击Zend Debugger下载地址2,是官网的下载地址,2010年7月29日的,在下载之前需要注册一个用户登录即可,Zend Debugger下载地址3中的Zend Debugger版本比较老,都是PHP5.2的早期版本。

  安装Zend Debugger

  在安装Zend Debugger之前推荐你可以看下在IIS下以FastCgi和ISAPI方法安装配置PHP5的教程。Zend Debugger的安装其实非常简单,只要下载好Zend Debugger的安装压缩包,将其解压,选择5_2_x_comp目录下的ZendDebugger.dll将其复制到PHP5.2的安装目录下的 ext目录即可,我的是C:\php52iis\ext。

  Zend Debugger安装目录说明:在Zend Debugger安装包下你可以看到4_3_x_comp、4_4_x_comp、5_0_x_comp、5_1_x_comp、5_2_x_comp、 5_2_x_nts_comp、5_3_x_nts_comp,其代表的是Zend Debugger适用的不同PHP版本,带nts表示的是PHP Non-Thread-Safe版本。

  如果你不知道你的PHP版本是否是Non-Thread-Safe,你可以通过phpinfo()函数输出PHP配置信息中的Thread Safety选项获取。

  在经过上述Zend Debugger安装步骤之后,我们需要打开PHP配置文件php.ini进行Zend Debugger的配置工作。

  配置Zend Debugger

  在php.ini文件末尾添加

1
2
3
4
5
[Zend Debugger]

zend_extension_ts="c:/php52iis/ext/ZendDebugger.dll"
zend_debugger.allow_hosts=192.168.1.2
zend_debugger.expose_remotely=always

即可,这里我简要说下Zend Debugger的配置选项:

  zend_extension_ts配置选项适用于Thread-Safe版的PHP,zend_extension配置选项适用于No-Thread-Safe版的PHP。

  zend_debugger.allow_hosts配置选项主要是设定允许具体哪台IP地址的Zend Studio连接Zend Debugger,由于我使用的是无线路由器,所以通过CMD下ipconfig确认分配的IP地址为192.168.1.2,否则请使用 127.0.0.1。更多具体的Zend Debugger配置信息我会下次介绍。

  保存好php.ini文件后,将Zend Debugger安装包中的dummy.php文件复制到网站根目录即可。

  最后重启IIS或者Apache服务器,用phpinfo函数输出PHP配置信息,如果出现如图

zend debugger在PHP5中的安装配置教程

  则说明Zend Debugger在PHP5运行环境中配置成功了,以后就可以在Zend Studio中使用Zend Debugger进行调试PHP工作了。

  Zend Debugger安装配置帮助文档

  网页格式PDF格式

  至此Zend Debugger在PHP5环境中的安装与配置工作就介绍完了,你也不妨尝试下在PHP5.3环境下安装配置Zend Debugger。

你可能感兴趣的:(debugger)