• PHP Debug实战技术


    老鸟有一本《PHP调试手册》在网络上风行,不管老鸟还是嫩鸟,这篇文章的作用是介绍一些简单易行的PHP调试实战技术,希望大家能提出宝贵意见,共同进步。

    (一)打印输出

    使用echo/print/print_r/var_dump+exit/die在制定位置输出调试结果,并终止程序执行。

    这招在php的ajax请求中不太好使,如果ajax是get方式的请求,我们可以在浏览器中输入ajax的url来输出我们的调试信息,但如果是post方式,改方法就有点力不从心了。

    (二)打开php的错误提示功能

    1.将php.ini文件中的display_errors设置为1或On,然后重启apache使之生效。

    2.在php程序中,使用set_ini('display_errors', 'On')函数来动态显示程序的错误信息。

       在程序中动态显示错误的设置必须保证在错误发生之前执行,所以最好是把它放在程序入口的地方。

    (三)查看apache错误日志

    1.在linux环境中,可以使用

    tail /your/path/to/error_file

    来查看apache中发生的最新的错误日志。

    2.windows下,直接用记事本打开apache的错误日志文件查看就可以了。

    (四)XDebug/ZendDebug

    XDebug可以实现远程调试功能,它主要有两大特色:

    1.输出信息格式化。

    它重写了系统的var_dump函数,可以让输出的数据更加工整、美观,方便查看。唯一的缺点是,当显示的数据量很大的时候,它会隐藏未能现实的部分。

    2.远程调试功能。

    XDebug工作过程主要由两部分组成:Xdebug Server, Xdebug Client。看上去,它有点像寄生在apache中的后门程序。它的工作原理如下,

    XDebug Client-----------(带xdebug session信息的远程页面请求)----------->XDebug Server(可以配置响应请求的主机和端口)

    XDebug Client<---------(连接信息确认,并返回请求页面数据)------------------XDebug Server

    XDebug Client-----------(发送breakpoint、AddWatch等调试命令)---------->XDebug Server

    XDebug Client<---------(接收Server返回的PHP执行状态信息)------------------XDebug Server

    ......

    XDebug Client-----------(带xdebug session信息的远程页面请求终止)-------->XDebug Server(断开连接)

    在PHPEclipse中使用XDebug:

    1.安装XDebug扩展,详细步骤请参考其他网络资源。

    2.在PHPEclipse中设置XDebug

    (1)指定使用XDebug调试器

    (2)指定PHP的可执行文件路径

    (3)设置远程主机及端口

    (4)设置请求站点和用于调试的浏览器

    (5)按F11开始调试吧。

    本文尚不完整,等有时间了再进行进一步的整理。

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wirror800/archive/2010/10/30/5975653.aspx

  • 相关阅读:
    项目经验分享(上)
    socket.io实现在线群聊
    socket.io中文文档
    常用的Sublime Text插件及安装方法
    常用的Atom插件
    atom及其插件activate-power-mode下载安装
    jeesite快速开发平台
    js权威指南
    hexSHA1散列加密解密(不可逆)
    腾讯云企业邮箱
  • 原文地址:https://www.cnblogs.com/kungfupanda/p/1887702.html
Copyright © 2020-2023  润新知