XDubg的配置与应用
XDUG调试器配置与应用
1.什么是xbug
xbug是一个开发源代码的php程序员调试器,可以用来跟踪,调试和分析Php程序的运行状况。
Xbug(free) ZendDebugger(need money)
2.下载Xbug组件:
到www.xdebug.org.com下载。下载相应的版本。
5.3 vc6
放置在任何位置。
在php.ini中载入xdbug组件。
zend_extension=绝对路径;
如:zend_extension_ts=D:\wamp\bin\php\php5.2.6\ext\php_xdebug-2.1.0-5.2-vc6.dll;
其实在Php5.2中zend_extension_ts
在5.2以上没有后缀_ts
3.[Xdebug]
;是否开启自动跟踪
xdebug.auto_trace = On
;是否开启异常跟踪
xdebug.show_exception_trace = On
;是否开启远程调试自动启动
xdebug.remote_autostart = On
;是否开启远程调试
xdebug.remote_enable = On
;允许调试的客户端IP
xdebug.remote_host=192.168.1.107
;远程调试的端口(默认9000)
xdebug.remote_port=9000
;调试插件dbgp
xdebug.remote_handler=dbgp
;是否收集变量
xdebug.collect_vars = On
;是否收集返回值
xdebug.collect_return = On
;是否收集参数
xdebug.collect_params = On
;跟踪输出路径
xdebug.trace_output_dir="c:\xdebug"
;是否开启调试内容
xdebug.profiler_enable=On
;调试输出路径
xdebug.profiler_output_dir="c:\xdebug"
测试代码:
<?php
phpinfo();
?>
测试时输入localhost/,php version 5.3.3最下面出现with xdebug,表示成功加载
2.1.0
============================================
XDUG错误分析与性能调试
Xdebug错误与性能分析:
function zw_fun(){
zw_fun();
} zw_fun();
这种嵌套循环是死循环,如果没有xdebug的话,那么会系统崩溃,xdebug最多给他循环100次,而一般情况下执行的时间和死循环的次数一般都有默认值。
<?php
function a(){
b();
}
function b(){
a();
}b();
?>
这样可以很清楚的看出嵌套中如何实现循环和循环规律。
***************
xdebug的内置函数应用:在php.ini中设置
xdebug.max_nesting_level 最大循环或调试次数,防止死循环。
xdebug扩展加载后,xdebug会对原有的某些php函数进行复写。
var_dump()函数
普通调试结果
array(2){["test"=>string(3)"abc""test2"=>string(3)"abd"]}
增加调试后:var_dump($arr);
结果显示为:
array
'test'=>string'abc'(length=3)
"test2"=>string('abd')(length=3)
增加颜色区分。
xDebug日志查看工具:winCacheGrind
调试信息需加入到php.ini文件中当中去。
xdebug.var_display_max_depth = 6
xdebug.dump_once = On
xdebug.dump_globals = On
xdebug.dump_undefined = On
xdebug.dump.SERVER = REQUEST_METHOD,REQUEST_URI,HTTP_USER_AGENT
xdebug.dump.REQUEST=*
xdebug.show_exception_trace = On
xdebug.show_local_vars = 1
这个还能告诉我,数据库的连接有哪些参数的配置有可能有问题
XDubg的配置与应用的更多相关文章
- 配置android sdk 环境
1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- react-router 组件式配置与对象式配置小区别
1. react-router 对象式配置 和 组件式配置 组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- Virtual Box配置CentOS7网络(图文教程)
之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network ...
- [linux]阿里云主机的免登陆安全SSH配置与思考
公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...
- nginx配置反向代理或跳转出现400问题处理记录
午休完上班后,同事说测试站点访问接口出现400 Bad Request Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
随机推荐
- C#程序设计基础——常量
C#程序设计基础——常量 常量是在编译时已知,并且在程序的生存期内不发生更改的不可变值.常量使用const修饰符进行声明. 常量必须在声明时初始化,且常量的类型必须为以下类型之一:sbyte/byte ...
- jquery $.each() 小探
<html> <head> <title> jquery each使用 </title> <script type='text/javascrip ...
- HDOJ(HDU) 1985 Conversions(汇率转换)
Problem Description Conversion between the metric and English measurement systems is relatively simp ...
- F - Warm up - hdu 4612(缩点+求树的直径)
题意:有一个无向连通图,现在问添加一条边后最少还有几个桥 分析:先把图缩点,然后重构图为一棵树,求出来树的直径即可,不过注意会有重边,构树的时候注意一下 *********************** ...
- linux下的type命令
type命令用来显示指定命令的类型.一个命令的类型可以是如下几种: alias 别名 keyword 关键字,Shell保留字 function 函数,Shell函数 builtin 内建命令,She ...
- CF380C Sereja and Brackets [想法+线段树]
题意: 给出一串括号 给出一些询问,问某个区间[l,r]内的能合法匹配的括号数有多少个 分析: 我们能够实现处理两个数组 sum[i] 1....i中已经能匹配的右括号的数目 left[i] 1... ...
- 使用jcrop进行头像剪切
http://www.cnblogs.com/chenssy/archive/2013/05/18/3084985.html http://code.ciaoca.com/jquery/jcrop/ ...
- sqlcipher移植
一.下载代码 sqlcipher赖openssl库,首先下载openssl: [fulinux@ubuntu ~]$ git clone https://github.com/openssl/open ...
- SVN经常使用命令说明
SVN版本号:1.5 及更新版本号 名词说明: WC:Working Copy 你的工作区 Versioned:受控的:受版本号控制的 SVN是什么? SVN是开源的版本号控制系统. 比CVS很多其它 ...
- unity3d触屏操作对象运动
using UnityEngine; using System.Collections; public class robot : MonoBehaviour { private GameObject ...