当前位置:首页 » 编程语言 » php调试器

php调试器

发布时间: 2022-12-19 23:54:52

php如何单步调试

PHP本就是脚本语言,程序执行就是“单线程”。

要测试节点或者逻辑是否正确的话,只需要在你需要测试的节点echo一下信息,还可以file_put_contents()写入日志信息。
这样程序执行的基本流程就可以了,这时候就可以判断,你程序的节点逻辑是否执行正确。

❷ 哪个php编辑器最好用

一个好的编辑器或开发工具,能够极大提高我们的开发效率。下面介绍10个免费、强大的PHP编辑器/开发工具。这些编辑器拥有调试器、增量执行PHP脚本、查看每一行的所有变量值等功能。
1) Notepad ++
Notepad++是一款非常有特色的编辑器,是开源软件,可以免费使用。支持的语言: C, C++, java , C#, XML, HTML, PHP, JavaScript! 功能有:
1. Notepad内置支持多达 27 种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持.nfo 文件查看),也支持自定义语言;
2. Notepad可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,代码显示得非常有层次感!这是此软件最具特色的体现之一;
3. Notepad可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例,等等;
4. Notepad提供数个特色东东,如邻行互换位置、宏功能,等等...现在网上有很多文件编辑器,这个却是不可多得的一款,不论是日常使用还是手写编程代码,都能让你体会到它独有的优势和方便。
2) PHPDesigner 7
phpdesigner 不仅支持php ,也支持其他网络语言像html ,xhtml,xml,css和javascript ,vbscript,java, c#,perl , python等!
由于可以搭配使用的相关免费资源相当的多,PHP 的网页设计越来越多人在学习了,MPS PHP DESIGNER 是针对 PHP 网页的编写所设计的程序,它内建一系列的指令码、PHP4 原始码数据库、语法高亮度显示功能、FTP 客户端…等,不管您是 PHP 网页设计高手,或者是刚入门的新手,您都可以使用者套软件来帮您设计网页程序(SQL、HTML 亦支持)。
3) Eclipse PDT
Eclipse这个集成开发环境只要有插件就可以实现相应功能。PDT这个项目很早就开始进行了。Zend Studio for Eclipse就是基于这个插件的,再加上自己的调试器。大家也可以在Eclipse上使用这个插件,然后自己再去选择调试器来配置自己的开发坏境。至于怎么配置,网上有人写出了自己的配置方法,大家可以自己查阅,这里只是介绍工具,这个暂且按下不表。这里我介绍的一个配置完整的包。这个也是Zend开发的,因为是免费的,所以在使用时自然不能和Zend Studio相比。
但是因为是在Eclipse上安装插件自定义实现,不必为PHP开发再安装一个大型软件,所以还是有很多人喜欢用这么个工具的。
4) Bluefish
Bluefish标榜其自身是“一款为熟练的Web设计员和程序员而设的编辑器,但它的UI却很直观,任何初学者都很够很快上手,并在不断地积累中发现和掌握它的其它功能。如果你需要的是一款能够进行Web代码设计的文本编辑器,那么它一定会是一款很不错的软件。它给我的总体印象就是专业却不令人生畏,文字和图标结合的都很好。
Bluefish提供了很多常用的HTML任务选项,例如字体、表格等等,当然还有链接,这个软件是用了一个比较不常见的“链接描述”(anchor)来表明可点击的链接。“链接描述”对话框甚至还提供了例如OnClick和OnMouseover这样的Javascript脚本事件功能。
5) Notepad2
Notepad2是一个外观类似系统记事本的文本编辑工具,但比记事本有了很大的增强。
1. 自定义语法高亮,支持HTML, XML, CSS, JavaScript, VBScript, ASP, PHP, CSS, Perl/CGI,C/C++, C#, Java, VB, Pascal,汇编, SQL, Python, NSIS,INI, REG, INF, BAT,DIFF等众多脚本文件。
2. 支持ANSI,Unicode,UTF-8等编码互换
3. 可以设置无限个书签(9种图标可换)轻松定位
4. 空格,制表符彩色显示,并可互相转换
5. 可以对任意的文本块进行操作,ALT键+鼠标
6) HTML-Kit
HTML-Kit可以很容易的编辑、查找、验证、预览和发布HTML文档。功能包括:拖拽编辑、颜色代码打印、自动完成、任务栏、UNIX风格的查找替换、无限UNDO、文档模板、支持多种语言脚本和CSS、XML及XHML等等。
7) PHP Coder
PHPCoder用于快速开发和调试PHP应用程序,它很容易扩展和定制,完全能够符合开发者的个性要求.
1. 结合了PHP编译器和参考文档,可以对编辑中的PHP脚本进行即时预览;
2. 支持高亮显示HTML和PHP代码;
3. 自动完成功能,可以自动完成用户自定义代码片断;
4. 标准函数提示;
5. 有专门的工程项目管理器;
6. 对象浏览器搜寻编辑中文件的包含信息,自定义函数,并以树形显示.
7. 支持查找对称的语句标记符;
8. 支持高级搜索和替换;
9. 自带FTP功能;
10. 支持运行和断点调试。
总之,PHPCoder是一个非常实用的,功能强大的编程环境,而且它是免费的!
8 ) PHP Editor
DzSoft PHP Editor是专为PHP所设计的网页程序编辑软件-DzSoft PHP Editor,具有PHP编辑、侦错、浏览、原始码检视、档案浏览、可自订的原始码样本..等功能,无须架设网站主机就可以测试PHP指令码,是一套功能强大的PHP编程软件。
9) NetBeans IDE
NetBeans IDE是一个开源集成开发环境,可用于Windows、Mac、Linux和 Solaris。除完全支持所有 Java 平台(Java SE、Java EE、Java ME 和 JavaFX)之外,NetBeans 还是PHP、Ajax和JavaScript、Groovy和 Grails、Ruby和Ruby on Rails以及C/C++软件开发的理想工具。
原开发者是 SUN公司,现在为Oracle公司所有。
NetBeans 有多个产品,我们这里介绍的是专为PHP使用的,NetBeans for PHP有以下几个显要的优点:
全中文界面
完全开源免费
支持代码模板功能
支持代码自动折叠(可选择自动折叠代码的区域)
支持代码格式化
支持项目详细设置(项目右键属性)
支持多编码
支持FTP管理
支持PHP调试
支持语法加亮自定义
支持文件比较
支持按项目查找和替换
支持版本控制(CVS、Subversion、Mercurial)
支持插件功能
支持代码缩进(Tab和Shift + Tab,大部分编辑器都支持这2个快捷键)
支持括号匹配(包括大括号)
支持语法即时纠错
支持PHP、JS、CSS以及混写导航
支持JS兼容性检查
支持CSS设计
支持代码提示(输入点号、::、->,就会自动提示代码,其它情况由用户来决定是否提示)
支持文件快速定位(快捷键Alt + Shift + O,可以快速在项目中通过关键字列表出相关文件并定位)
支持类型快速定位(快捷键Ctrl + O,针对于JS,直接搜索出包含关键字的函数名称并定位)
支持符号快速定位(快捷键Ctrl + Alt + Shift + O,同时针对PHP和JS,直接搜索出包含关键字的属性、方法和函数名称并定位)
系统和插件可以自动更新
好处实在说不完,谁用谁知道,你的eclipse、zendstudio都可以扔了,这话有点过,如果单从费用来说,后者确实可以去掉。
10) PSPad
pspad,一款超级小巧,又超合适开发php的软件
推荐理由:对编码格式支持超好,用DW编写纯代码还是极易出错,如带SESSION在DW编写,绝对会提示错误,当然还有很多好处就不一一罗列
缺点:没有代码提示功能,不过,如果你是老手的话,这个不在呼,而新手更应该练习不需提示的写代码。
免费的编辑器,支持简体中文界面。它集各种编辑器的优点于一身,同时编辑多个文件,可以使用project;内置HEX编辑器;内置HEX编辑器;支持宏的录制和使用;支持语法高亮和彩色显示,HTML,PHP,Pascal,JScript,VBScript,SQL,Perl,JAVA...;内置文件比较工具;支持宏的录制和使用;内置FTP工具;可以针对不同的文件类型设置对应的外部工具;支持外部编译器。不过其打开文件的速度似乎不如Editplus。

❸ 常用的php开发工具有哪些

1、EditPlus

EditPlus是一套功能强大,可取代记事本的文字编辑器,拥有无限制的Undo/Redo、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。对于很多php程序来说,EditPlus 非常简单好用。同时EditPlus也是一款好用的HTML编辑器,除了可以颜色标记HTML Tag (同时支持C/C++、Perl、Java)外,还内建完整的HTML和CSS1指令功能,对于习惯用记事本编辑网页的朋友,它可帮你节省一半以上的网页制作时间,若你有安装IE 3.0以上版本,它还会结合IE浏览器于EditPlus窗口中,让你可以直接预览编辑好的网页(若没安装IE,也可指定浏览器路径)。

2、 PHPDesigner 7

PHPDesigner 7不仅适用于php开发 ,也支持其他编程语言,例如:html 、xhtml、xml、css和javascript 、vbscript、java、c#、perl、python等!PHPDesigner 7主要针对 PHP 网页的编写所设计的程序,它内建一系列的指令码、PHP4 原始码数据库、语法高亮度显示功能、FTP 客户端等,无论您是 PHP 网页设计高手,或者是刚入门的新手,您都可以使用PHPDesigner 7来设计网页程序。

3、Norepad++

Notepad++是一款台湾人开发的一款非常有特色的编辑器,属于开源软件,支持C、C++、Java、C#、XML、HTML、PHP、Javas cript编程语言,而且可以免费使用。
主要功能有:
①内置支持多达27种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持.nfo文件查看),也支持自定义语言;
②可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,代码显示得非常有层次感!这是此软件特色的体现之一;
③可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例等等。

4、PHP Coder

PHPCoder用于快速开发和调试PHP应用程序,它很容易扩展和定制,完全能够符合PHP开发者的个性要求 主要功能为:
1. 结合了PHP编译器和参考文档,可以对编辑中的PHP脚本进行即时预览;
2. 支持高亮显示HTML和PHP代码;
3. 自动完成功能,可以自动完成用户自定义代码片断;
4. 标准函数提示;
5. 有专门的工程项目管理器;
6. 对象浏览器搜寻编辑中文件的包含信息,自定义函数,并以树形显示;
7. 支持查找对称的语句标记符;
8. 支持高级搜索和替换;
9. 自带FTP功能;
10. 支持运行和断点调试;
总之,PHPCoder是一个非常实用的,功能强大的编程环境,而且它是免费的!

5、Zend Studio

zend Studio 是专业开发人员在使用PHP整个开发周期中的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,Zend Studio 加速开发周期,并简化复杂的应用方案。
Zend Studio主要组件
1 专业的集成开发环境 内置 编辑器, 调试器, 以及 帮助文档
2 Windows, Linux, Mac 等多个操作系统版本
3 多语言支持
4 专业的编辑器
5 关键字、语法加亮显示 (PHP, HTML, XHTML, and JavaScript)
6 XML & CSS 的关键字、语法加亮显示
7 代码模板
8 支持 PHP 4 and PHP 5
9 代码自动完成功能
10 PHP Code (+PHPDoc) 分析功能
11 内部调试器
12 代码摘录
13 PHP 代码分析
14 远程调试器
15 Remote Profiler
16 数据库连接以及集成查询,适用于MySQL、Oracle 、SQL Server、SQLite、 PostgreSQL
17CVS 集成,方便团队开发

❹ 常用的PHP调试工具有哪些

  1. Pinba:是个开源的 MySQL 存储引擎,主要任务是帮助 web 开发者监控所有 PHP
    脚本的性能。使用 MySQL 作为只读接口,作为一个 PHP 的实时监控服务器。

  2. PHP Dyn:是个令人惊奇的扩展,帮助调试 PHP
    脚本。它的主要是能跟踪执行脚本,也是一款提供给 PHP 开发者的开源软件。

  3. Kint:是另一个调试 PHP 脚本的最好的调试工具,非常容易使用,强大,而且 PHP 的
    web 开发者可以随意定制。

  4. PHP MD:可以从源代码中找到错误,并且使用一系列有限的定义规则就可以轻松解决问题。

  5. PHP Debug Bar:是另一个非常棒的 PHP 调试工具,可以显示
    web 应用的 pst 数据。

  6. Whoops:是个更高效的 PHP
    调试库,帮助开发者构建和维护他们的项目,使其做得更好。Whoops 也是个开源软件,有着许多杰出的特性。

  7. Xdebug:是提供给 PHP
    用户的一个扩展,有着许多高级的特性,每一时刻都有不同类型的更新。

  8. Krumo:是 PHP 调试工具的杰出代表,可以显示任意的 PHP 变量的结构信息。

❺ php异步调试和线上调试网站程序

php异步调试和线上调试网站程序

php异步调试和线上调试网站程序既方便网站程序错误调试,又不影响网站的正常运行的调试方法。下面是我为大家带了的php异步调试和线上调试网站程序,欢迎阅读。

php异步调试和线上调试网站程序

代码如下

//ini_set('error_reporting',E_ALL ^ E_NOTICE);//显示所有除了notice类型的错误信息

ini_set('error_reporting',E_ALL);//显示所有错误信息

ini_set('display_errors',off);//禁止将错误信息输出到输出端

ini_set('log_errors',On);//开启错误日志记录

ini_set('error_log','C:/phpernote');//定义错误日志存储位置

另外附加两句比较常用的排除错误信息的PHP语句:

代码如下

@ini_set('memory_limit','500M');//设置程序可占用最大内存为500MB

@ini_set('max_execution_time','180');//设置允许程序最长的执行时间为180秒

补充

die()和exit()也是我们常用的php调试一个方法

die()和exit()函数都有终止线程的作用,是php断点调试需要使用的最主要的函数,它们也是php程序员使用非常频繁的函数。然而两者又有什么区别呢?在程序调试时需要注意什么问题呢?

die()函数一般与“or”一并使用,写作“or die()”,经常看到这样的语句:

代码如下

$file = fopen($filename, 'r') or die("抱歉,无法打开: $filename")

or在这里是这样理解的,因为在PHP中并不区分数据类型,所以$file既可以是int也可以bool,所以这样的语句不会报错。但其处理过程可能有些朋友不大明白。其实在大多数的语言中, bool or bool这样的语句中,如果前一个值为真后一个值就不会再判断了。这里也是的,所以如果fopen函数执行正确的话,会返回一个大于0的int值(这其实就是"真"),后面的语句就不会执行了。如果fopen函数执行失败,就会返回false,那么就会判断后面的表达式是否为真了。结果执行了die()之后,不管返回什么,程序都已经停止执行了,并且显示指定的.出错信息,也就达到了调试的目的。就这样。

实际上,die和exit是等价的,都是用来终止当前脚本。

php手册对两者的解释如是说:

exit() 函数输出一条消息,并退出当前脚本。该函数是 die() 函数的别名。

die() 函数输出一条消息,并退出当前脚本。该函数是 exit() 函数的别名。

实例:

代码如下

<?php $site = "http://www.111cn.net/"; fopen($site,"r") or exit("Unable to connect to $site"); ?>

<?php $site = "http://www.111cn.net/"; fopen($site,"r") or die("Unable to connect to $site"); ?>

var_mp()和print_r()

var_mp -- 打印变量的相关信息

void var_mp ( mixed expression [, mixed expression [, ...]] )

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

提示: 为了防止程序直接将结果输出到浏览器,可以使用输出控制函数(output-control functions)来捕获此函数的输出,并把它们保存到一个例如 string 类型的变量中。

代码如下

<?php

$a = array (1, 2, array ("a", "b", "c"));

var_mp ($a);

$b = 3.1;

$c = TRUE;

var_mp($b,$c);

?>

var_mp()可以输出多个变量,如:var_mp($b,$c)

print_r -- 打印关于变量的易于理解的信息

bool print_r ( mixed expression [, bool return] )

注: 参数 return 是在 PHP 4.3.0 的时候加上的

print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。

记住,print_r() 将把数组的指针移到最后边。使用reset() 可让指针回到开始处。

代码如下

<pre>

<?php

$a = array ('a' => 'apple',

'b' => 'banana',

'c' => array ('x','y','z'));

print_r ($a);

?>

</pre>

上边的代码将输出:

<pre> Array ( [a] => apple [b] => banana [c] => Array ( [0] => x [1] => y [2] => z ) ) </pre>

如果想捕捉 print_r() 的输出,可使用 return 参数。若此参数设为 TRUE,print_r() 将不打印结果(此为默认动作),而是返回其输出。

例子:return 参数示例

代码如下

<?php

$b = array ('m' => 'monkey',

'foo' => 'bar',

'x' => array ('x', 'y', 'z'));

$results = print_r ($b, true); //$results 包含了 print_r 的输出结果

?>

注: 如果想在 PHP 4.3.0 之前的版本中捕捉 print_r() 的输出,可使用输出控制函数。

注: 在 PHP 4.0.4 之前的版本中,如果给出的 array 或 object 包含了直接或间接指向自身的引用,print_r() 将永远继续下去。print_r($GLOBALS) 就是一个例子,因为 $GLOBALS 自身即是全局变量,其包含了指向自身的引用。

下面的几个函数可以让你随时查看程序中任何变量的类型及其值。

代码如下

function ss_array_as_string (&$array, $column = 0) {

$str = "Array(

n";

while(list($var, $val) = each($array)){

for ($i = 0; $i < $column+1; $i++){

$str .= "&nbsp;&nbsp;&nbsp;&nbsp;";

}

$str .= $var. ==>; ;

$str .= ss_as_string($val, $column+1)."

n";

}

for ($i = 0; $i < $column; $i++){

$str .= "&nbsp;&nbsp;&nbsp;&nbsp;";

}

return $str.);

}

function ss_object_as_string (&$object, $column = 0) {

if (empty($object->;classname)) {

return "$object";

}

else {

$str = $object->;classname."(

n";

while (list(,$var) = each($object->;persistent_slots)) {

for ($i = 0; $i < $column; $i++){

$str .= "&nbsp;&nbsp;&nbsp;&nbsp;";

}

global $$var;

$str .= $var. ==>; ;

$str .= ss_as_string($$var, column+1)."

n";

}

for ($i = 0; $i < $column; $i++){

$str .= "&nbsp;&nbsp;&nbsp;&nbsp;";

}

return $str.);

}

}

function ss_as_string (&$thing, $column = 0) {

if (is_object($thing)) {

return ss_object_as_string($thing, $column);

}

elseif (is_array($thing)) {

return ss_array_as_string($thing, $column);

}

elseif (is_double($thing)) {

return "Double(".$thing.")";

}

elseif (is_long($thing)) {

return "Long(".$thing.")";

}

elseif (is_string($thing)) {

return "String(".$thing.")";

}

else {

return "Unknown(".$thing.")";

}

}


;

❻ phpstorm 中是怎样调试PHP

PHPStorm+XDebug配置和断点调试


Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。安装和配置Xdebug大体分为三大步:


一、PHPStorm配置

1.File -> Settings -> Languages & Frameworks -> PHP

//详情:http://www.cent123.com/thread-12-1-1.html
XDebug]
zend_extension="E:phpStudyphpphp-5.6.27-ntsextphp_xdebug.dll"</p><p>xdebug.profiler_append=0
xdebug.profiler_enable=0
xdebug.trace_enable_trigger=1
xdebug.profiler_enable_trigger=1
xdebug.profiler_output_dir="E:phpStudy mpxdebug"
xdebug.trace_output_dir="E:phpStudy mpxdebug"
;xdebug.profiler_output_name="cachegrind.out.%t-%s"
xdebug.profiler_output_name="callgrind.out.%t-%s"
xdebug.remote_enable=1
xdebug.remote_handler="dbgp"
xdebug.remote_host="127.0.0.1"

这个帖子很详细http://www.cent123.com/thread-12-1-1.html

❼ eclipse 怎么调试php啊

. 下载eclipse,从官网上找就可以了,并确认当前系统中有java环境,即jdk和jre。

2. 安装pdt了,采用的是在线安装,更新地址在默认中已经包含了。只是更新起来比较麻烦。(如果直接下载 携带PDT的 Eclipse版本,可省略)

3. 下载调试器,调试器有两种,一种时xdebug,另一种时zenddebug。
采用 xdebug

下载下来的应该是源代码包。解压缩,然后cd到目录,然后phpize,有的时候可能没有这个程序,运行sudo apt-get install
php5-dev,就可以了。然后就会出现熟悉的config程序 ./configure 出现一连串黑白屏字符,接着make,make
install。后两项命令执行的时候,可能会需要sudo权限,因为涉及到将程序文件复制到系统目录。

4.
在/etc/php5/apache2/conf.d/中建立一个xdebug.ini文件,可以用vi或者其他文本程序,加入如下的配置项目。配置内容如下:

代码如下:
[xdebug]
zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
xdebug.auto_trace=on
xdebug.collect_params=on
xdebug.collect_return=on
xdebug.max_nestring_level=100
xdebug.profile_enable=on
xdebug.remote_enable=on
xdebug.remote_host=localhost
xdebug.trace_output_dir="/tmp"
xdebug.profile_output_dir="/tmp"
xdebug.idekey=webide
xdebug.mode=re

放到这个目录中的ini文件会被php自动加载。

至此,xdebug的安装配置已经完成。

5. 打开eclipse,然后选择window preference , 先配置服务选项:

先配置debug,选择php选择debug,将php的debugger选择为xDebug。接着配置Server,
选择PHP
Servers,然后弹出菜单:然后点击new,在Name处随便选择一个名字,url配置成调试的主url。
然后设置成default。
最后配置PHP
Executables,add 随便起个名字,path设置成/usr/bin/php
然后设置ini的位置在/etc/php5/apache2/php.ini
最后将PHP debugger设置成为XDebug就可以了。

❽ php调试工具

PHP编程“调试”首推firePHP。
firephp,火狐的一个附件组件,依赖firebug,打印值是显示在firebug控制台的。它有两个常用语法,1、直接输出fb($obj); 2、跟踪变量来源fb($obj,TRACE);
安装使用说明:
1、安装火狐浏览器
2、安装firebug附件组件
3、安装firephp附件组件
4、下载firephp的PHP文件(fb.php和FirePHP.class.php)
5、在项目中引入fb.php,它会自动引入FirePHP.class.php,因此只需(require $dirToFirephp.'/fb.php'即可。
6、使用1,在你需要知道变量$variable的值时,在项目中加一行fb($variable);即可。此时要保证你的firebug处于启用状态,F12可以快速启用firebug。
7、使用2,在你需要知道变量$variable的根源时,在项目中加一行fb($variable,TRACE);即可。它会帮你显示从项目起始执行到当前行的每一个关联行。

热点内容
安卓手机怎么找微信隐藏对话 发布:2025-05-14 23:07:47 浏览:336
怎么查看泰拉服务器ip 发布:2025-05-14 23:03:29 浏览:72
c语言学生成绩查询系统 发布:2025-05-14 22:58:30 浏览:4
怎么进别人的服务器 发布:2025-05-14 22:45:55 浏览:772
用编程写音乐 发布:2025-05-14 22:45:08 浏览:782
如何识别电脑的网络配置 发布:2025-05-14 22:38:46 浏览:847
pipforpython3 发布:2025-05-14 22:38:34 浏览:350
如何把迷你世界的服务器搞崩 发布:2025-05-14 22:37:15 浏览:94
如何让安卓卡死机 发布:2025-05-14 22:36:27 浏览:634
wemall微商城源码 发布:2025-05-14 22:15:20 浏览:804