[分享]ZendStudio调试功能使用说明
作者:Hosander 来源:《PHPer》杂志前言
ZendStudio(以下简称ZDE)是专业开发人员在使用PHP的整个开发周期中唯一的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,ZDE加速开发周期,并简化复杂的应用方案。
本文讲述的是ZDE最为突出的三个功能,分别是:调试、脚本性能分析。
一、调试
ZDE的调试方式分为内部调试和服务器调试。内部调试是指使用ZDE自带的本地PHP4或者PHP5来进行调试。服务器调试使用的是远程的服务器来运行位于服务器上面的PHP脚本。
内部调试是开发工程师在编写代码的时候,在上传之前的调试。服务器调试主要是以调试项目为主。
内部调试
内部调试使用的是ZDE自带的PHP版本。在最新的ZendStudio5.1.0里面分别为PHP 4.4.1和PHP5.1.1。
调试的时候用到的一系列工具是:
调试信息窗口 – 显示调试过程和语法监测等信息。
变量、观察窗口 – 查看相关变量,函数,类和表达式的信息。
堆栈窗口 – 监控堆栈的调用和参数的传递。
调试正在调用的或者是已经调用的函数 – 使用引入 ,引出 ,断点等进行调试。
控制调试的节奏 – 使用完全 或者逐行调试 ,并且用断点和执行到光标处 进行配合。
查看实时的输出结果 – 查看Text或者浏览器输出两种调试结果。
查看缓冲区 – 如果代码里面有缓冲区应用,可以直接查看缓冲区的代码。
服务器调试
服务器调试(远程)调试可以让开发人员调试上传得PHP代码,从而进行项目级的调试。也就是说远程服务器上面的ZDE Server将为你实现调试的各种功能(如果服务器已经有ZP,不用再另行安装ZDE Server)。
此外服务器调试的时候,也可以使用本地副本(Tools | Debug | Debug URL 里面选择可以使用本地副本就可以了)。这种情况下,ZDE Server在调试被调用的PHP文件的时候,查找的顺序将是:
ZDE打开的文件àZDE打开的项目的文件à服务器上的文件。
服务器调试(Debug URL)的特点
使用服务器进行调试也较Debug URL,但是这与传统的IE调试有着很大的不同。它具备了以下几个特点:
l 用ZDE内嵌的浏览器访问PHP代码,方便与ZDE Server的互通。
l 调试交互数据的表单、脚本,比如POST等。
l 调试返回的信息可以分别体现在内嵌的浏览器和调试输出窗口。
l 自动加载调用的PHP脚本,并且在该脚本的第一行处停止,等待下一步指示。
l 调试的过程中同样可以查看参数、堆栈、监视点(用户指定的特定参数)等。
如何搭建服务器调试的环境
安装ZDE Server,已经安装ZP(ZendPlatform)的用户已经具备了ZDE Server。在ZDE Server里面的Allowed Hosts里面填入本机的IP地址。
如果你的个人电脑是在子网或者NET内,请使用ZDE Tunneling来穿越防火墙,这时还需要在ZDE Server里面的Allowed Hosts for Tunneling选项里面写入自己的IP地址。穿越防火墙是通过80端口穿越的。
如果使用穿越防火墙,客户端请使用(工具à通道设置)选项。在里面填入服务器的主机地址(域名或者IP,无需Http)。
注意:
Allowed Hosts和Allowed Hosts for Tunneling两项里面都要有“127.0.0.1”。
最底下的Other Settings设置请不要使用“Never”选项。
如何进行服务器调试(Debug URL)
1、从菜单栏点击(调试à调试URL)打开调试窗口,并配置一些设置。
浏览器开始位置 - 填写服务器的URL,如果文件不在服务器,浏览器会打开空白页。
仅调试第一页 – 只是调试第一页了。
调试所有页面 – 指定的文件和所有相关的文件都将被调试。
Start Debug from – 仅仅是制定的文件被调试。
从该页继续调试 – 选择此项则所有与该文件相关的也都被调试。
2、打开内嵌的浏览器,输入URL打开要调试的页面,点击左边的绿色爬虫按钮即开始调试该页面,如果点击按钮的下拉菜单:
Next Page only:它将调试到下一个文件。
All Forms(POST):调试所有的POST表单。
All Pages on the site: 调试整个服务器的所有相关联的文件。
二、分析
ZDE的分析功能主要是以概要文件(Profiler)来体现的。概要文件提供的信息主要是分析文件的执行效率,还包括了所有相关联的文件的执行效率。通过图形和表格两个方式来反馈给用户。
使用概要文件要求已经配置了ZDE Server。
如何打开概要文件
菜单栏à概要文件à输入URL进行分析。
在内嵌的浏览器点击概要文件图标(绿色小甲虫右边)分析当前页面。
信息选项
常规信息
URL: 访问文件时使用的URL。
查询:访问时候带的参数。
路径:文件所在的路径。
总的请求时间:文件运行过程的总时间。
文件数:该页面所包含的文件总数。
日期: 调试的具体日期
函数统计信息
函数名: 函数名称。
源行: 函数所在的位置。
调用计数:该函数被调用的次数。
固有时间:该函数自身执行的时间。
总时间: 调用该函数所用的总时间。
此外这个界面可以根据调用时间、调用次数、函数所在行排序。
调用跟踪
以堆栈的形式多调用的跟踪。以树型结构现实。在这个界面里如果发现时间不够清楚,比如总时间远远大于各个分时间之和是因为总时间等于各个分模块的运行时间加上调用的时间。具体可以在函数统计信息查看。
浏览更多精彩文章请点击下载《PHPer》http://www.phpchina.com/phper/