文档章节

php 调试与追踪

j
 james_laughing
发布于 2017/05/08 16:36
字数 709
阅读 45
收藏 0

 

一、常用的PHP 追踪和调试

   1、追踪

        (1)php 函数

                a)echo print print_r die var_dump
                b)debug:输出行号及函数名称
                     func_num_args  func_get_args
                c)var_dump
                d)debug_zval_dump:与var_dump一样,不同的是增加了一个变量引用次数
                e)debug_print_backtrace  查看程序调用栈
      (2)断点调试与变量跟踪工具Xdebug
            1)安装扩展
            2)netbeans设断点

      (3)phplog
              1.解压phplog.php,把它放到你的站点目录下.
              2.用编辑器打开phplog.php,定位到20行,设定好你个人的配置.
              3.直接在浏览器中打开phplog.php,你就可以看到一些相关的信息及帮助说明.
              4.你可以的程序中使用phplog.php中的__log函数记录你想要记录的变量.
               例如:
                require (.../phplog.php);
                    __log('Hello phplog');
              5.在你的浏览器里访问phplog.php,将看到你刚才记录的信息及它的调用栈和参数.
              6.如果不你喜欢用__log这个函数,可以为它建个别名,在phplog.php, 查找you_can_rename_this_function_name_to_what_you_like, 替换成你想要的函数名,从而在整个系统中可以用system_log,和用__log一样的效果.

  

      (4)firephp

             首先确保你安装了Firebug,然后再去安装FirePHP,这是你会看到Firebug多了一只蓝色的虫
             引入FirePHP的服务端:require_once('FirePHPCore/fb.php')。
             用fb()函数
             include (fb.php)
             $str=array()
             fb($str);

2、前段调试

        1、Firebug调试API
             console.[info|warn|error|dir|dirxml|table|trace|time|timeEnd]
             使用Firebug调试DOM结构
             使用Firebug调试JavaScript
             使用Fiddler调试远程服务器上的文件

3、日志管理      

        1、PHP日志:php.ini
              log_errors=on
              logLevel warn
              error_log=e:/....log

              时间+错误级别+错误信息+发生信息文件+错误所在的代码行

        2、Apache服务器日志
             ErrorLog “Logs/error.Log”
             CustomLog “Logs/access.Log” common

       3、MySQL日志
             a)错误日志 Log erro=[file name]
             b)二进制日志 binLog
             c)查询日志
            d)慢查询日志:

二、代码测试

       冒烟测试(基本功能)
       单元测试(模块)
       安全测试
       压力测试

 

      时间点测试
         a)microtime(TRUE)
         b)Xdebug.profiler_enable=on
         c)ab

 

     性能测试注意事项
      a)如果进行对比测试,首先应该保证可比性
      b)排除不相关因素
      c)过多与过少
      d)考虑热启时间
      e)指标的全面性
      f)关于时间精度的说明

 

 

    单元测试框架PHPUnit的安装
    结合NetBeans使用PHPUnit进行单元测试
    PHPUnit中的断言函数
    PHPUnit常用方法
    PHPUnit常用注解

   使用JMeter压力测试HTTP
   压力测试MySQL
   JMeter+Badboy组合测试

 

   Apache Benchmark
  a)并发测试:ab -n 100 -c 10 http://...
  b)时间测试: ab -c 10 -t 20 http://
  注:结尾加个 /
   Siege
   a)负载测试
   影响基准测试数字
   a)地理位置和网络问题
   b)响应大小
   c)代码处理
   d)浏览行为
   e)web服务器配置

 

 

本文转载自:http://blog.csdn.net/woshihaiyong168/article/details/53222932

j
粉丝 29
博文 455
码字总数 22188
作品 0
广州
私信 提问
phpDesigner Xdebug调试php, 新手必读.

[Xdebug]zendextension = "D:/xampps/php/ext/phpxdebug-2.2.3-5.5-vc11-x86_64.dll"xdebug.profiler_enable=onxdebug.remote_enable=onxdebug.remote_handler=dbgpxdebug.remote_host=127.0......

Tuesday
2013/08/06
0
9
vagrant+phpStorm配置xdebug

工欲善其事,必先利其器。 Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。 xdebug是一个PHP的扩展,...

mrc_elite
2017/03/04
0
0
PHP调试插件--FirePHP

Fire PHP 是Firefox 的扩充套件,但它可以帮你debug 后端PHP 的程式,听起来很神奇是吧?其实用的技术跟某些IDE 一样,要求你在写程式时加入一些追踪用的代码。通过使用Firephp你可以在Fireb...

匿名
2008/09/19
10.2K
2
FirePHP的网友评论

FirePHP 是Firefox 的扩充套件,但它可以帮你debug 后端PHP 的程式,听起来很神奇是吧?其实用的技术跟某些IDE 一样,要求你在写程式时加入一些追踪用的代码。通过使用Firephp你可以在Fireb...

红薯
2009/12/11
324
3
Firefox 扩充套件 -- FirePHP 0.3

FirePHP 是Firefox 的扩充套件,但它可以帮你debug 后端PHP 的程式,听起来很神奇是吧?其实用的技术跟某些IDE 一样,要求你在写程式时加入一些追踪用的代码。通过使用Firephp你可以在Fireb...

红薯
2009/05/27
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

数据库表与表之间的一对一、一对多、多对多关系

表1 foreign key 表2 多对一:表 1 的多条记录对应表 2 的一条记录 利用foreign key的原理我们可以制作两张表的多对多,一对一关系 多对多: 表1的多条记录可以对应表2的一条记录 表2的多条记...

Garphy
40分钟前
6
0
MySQL 表崩溃修复

MySQL日志报错 2019-10-19 13:41:51 19916 [ERROR] /usr/local/mysql/bin/mysqld: Table './initread_hss/user_info' is marked as crashed and should be repaired2019-10-19 13:41:51 1......

雁南飞丶
49分钟前
6
0
Error和Exception

1.Error类和Exception类都是继承Throwable类 2.Error(错误)是系统中的错误,程序员是不能改变的和处理的,是在程序编译时出现的错误,只能通过修改程序才能修正。一般是指与虚拟机相关的问...

大瑞清_liurq
今天
4
0
8086汇编基础 start 程序入口标签的示例

    IDE : Masm for Windows 集成实验环境 2015     OS : Windows 10 x64 typesetting : Markdown    blog : my.oschina.net/zhichengjiu    gitee : gitee.com/zhichengjiu   ......

志成就
今天
4
0
uni app 零基础小白到项目实战2

<template> <scroll-view v-for="(card, index) in list" :key="index"> <view v-for =(item, itemIndex) in card"> {{item.value}}</view> </scroll-view></template> GraceUi va......

达达前端小酒馆
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部