预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共23页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

使用Eclipse和PDT调试PHP 简介:将PHP开发工具(PHPDevelopmentTools,PDT)插件安装到EclipseEuropa后,您将能够快速编写和调试PHP脚本和页面。PDT支持两种调试工具:XDebug和ZendDebugger。通过本文了解如何配置PDT来调试PHP脚本,并了解在详细查看脚本时应使用哪些透视图。 开始之前 关于本教程 本教程将演示如何为Eclipse配置PHPDevelopmentTools(PDT)插件以调试PHP脚本,并介绍在详细查看脚本时应使用哪些透视图(即PHP调试)。 目标 完成本教程后,您将能够使用PDT项目开发PHP应用程序,从而在Eclipse中设置XDebug—一种开源项目,可以调试可执行的或运行在Web服务器上的脚本—或ZendDebugger。您将了解PDT项目的PHPDebug透视图的各个部分,并了解如何设置、查看和使用断点。您还将了解在单步调试代码时如何检查变量的值,以及如何在本地服务器上调试PHPWeb应用程序,从而使用调试器遍历PHPWeb应用程序。 先决条件 要从本教程获得最大收益,您应该熟悉一些PHP开发。最好是曾经进行过软件开发。如果熟悉其他语言的调试,则可以更好地理解调试概念。本教程适合于接触Eclipse不多的新手,而不是长期使用Eclipse的人员。 系统需求 要完成本教程,您需要以下设置: 运行Microsoft®Windows®、MacOSX或Linux®的计算机 本教程的示例php.ini文件用于MacOSX和Linux系统。由于两种调试器都需要进行配置,以告诉PHP调试器扩展的位置,因此惟一明显的区别—如果查看Windows示例—是调试器扩展的路径。对于MacOSX和Linux,库名以.so结尾。对于Windows,库名以.dll结尾;同样,使用正斜杠(/)而不是反斜杠(\)作为目录分隔符。 PHPV5.x Linux用户可以使用其发行版中附带的软件包安装PHP。OSX和Windows用户可以在PHP.net中查找HYPERLINK"http://www.php.net/downloads.php"PHPV5.x。 注意:本教程的示例使用的是PHPV5.2.5。 EclipseV3.3 Linux用户可以很容易获得Eclipse,因为它通常包含在发行版附带的软件包中。也可以在HYPERLINK"http://www.eclipse.org/downloads/"Eclipse下载中找到Eclipse集成开发环境(IDE)。 用于Web应用程序的Apache或MicrosoftInternetInformationServices(IIS) 需要安装一个Web服务器来运行教程示例,演示如何在服务器中调试PHPWeb页面。然而,如果只希望调试非Web页面的PHP脚本,则不需要使用Web服务器。对于本教程,我们使用ApacheV2作为Web服务器。此外,也可以使用Windows和IIS。本教程需要您具有适当的访问权限,可以写Web服务器文档的根目录。 EclipsePHPDevelopmentTools框架 如果还没有安装HYPERLINK"http://www.eclipse.org/pdt/"PHPDevelopmentTools(PDT),请阅读“PDT项目概述”小节,以决定是否需要下载并安装绑定在ZendDebugger中的PDT。EclipseFoundationHYPERLINK"http://wiki.eclipse.org/PDT/Installation"PDT/Installationwiki提供了简要的说明。 ZendStudioWebDebugger 下载HYPERLINK"http://www.zend.com/en/downloads/"ZendStudioWebDebugger的30天试用版。 调试PHP的旧方法 实现在IDE内使用调试器之前,我以前使用下面的方法调试PHP脚本: 设置一些可以输出变量值的echo语句。在部署脚本之前,需要去掉这些语句或将它们注释掉。 使用“Iamhere”echo语句输出脚本的位置。在部署脚本之前,还需要删除或注释掉这些代码行。 调整php.ini文件,告诉PHP输出详细的消息,包括警告。执行这个操作是出于安全方面的考虑,因为它可能显示不希望的内容。如果进行本地开发并将脚本部署到不同的服务器上,则不会出现这样的问题。 使用一个logger类,比如LogPEAR模块。这是一个很好的选项,因为logger允许您设置优先权,从而可以在稍后静默地调试消息。然而,这需要花费一些时间—尽管相对较短—来进行配置并在不同的环境中使用不同的登录级别。通常,您可能