webgrind这个性能检测是须要xdebug来配合,由于webgrind 进行性能检测分析就是经过xdebug生成的日志文件进行编译分析的php
那么这就须要们配置好xdebug,这个通常的php 版本都已经有这个扩展了,mysql
如何开启呢? 和php大部分扩展同样须要在ini文件中 引入扩展,同时配置开启xdebug便可,即 把全部的off 搞成on 而后 指定 xdebug日志文件的存放位置web
而后去重启你的httpdsql
phpinfo中看到的xdebug是开启状态便可浏览器
下载一个webgrind包便可,我我的云盘中搜索webgrind下载便可sqlserver
而后放到 localhost的默认的站点目录下解压缩,而后这是就这么神奇webgrind就会自动去检测xdebug生成的那些 webgrind认识的文件性能
这是 我在 www目录也就是个人localhost 默认的站点目录下写了一个这样的脚本:测试
xdebug.phpfetch
<?php
/**
** @jiaoben 此脚本是xdebug 配合 webgrind 性能测试的脚本程序
** @desc 用来测试性能
**
*/
function orders(){
$fid = $_GET['fid'];
@$link = mysql_connect("127.0.0.1",'root',"") or die('connect mysqlserver is fail');
mysql_select_db("xxx",$link) or die("connect database is fail");
$sql ="select a.aa,c.bb,c.cc,d.dd,d.ee,d.time gotime,e.ff,count(g.zzid) buynum from ky_order a left join user c on a.aa=c.aa left join shu d on a.shuttleId=d.id left join bus e on a.aid=e.uid left join childOrd f on a.orderId = f.union_orderId left join childOrdDetail g on f.cid= g.ucidwhere a.fid='".$fid."' and a.psta=1 group by a.oid order by a.sid asc"; ui
$sql_1 ="select* from ky_order a left join user c on a.aa=c.aa left join shu d on a.shuttleId=d.id left join bus e on a.aid=e.uid left join childOrd f on a.orderId = f.union_orderId left join childOrdDetail g on f.cid= g.ucidwhere a.fid='".$fid."' and a.psta=1 group by a.oid order by a.sid asc";
$res_a = mysql_query($sql);
while($row = mysql_fetch_assoc($res_a)){
$rows[] = $row;
}
var_dump($rows);
}
orders();
?>
很明显看到我里面有两个sql语句,区别就是 第一个 写出了我具体要的字段,第二个 * 号查询表中全部字段
这是 localhost/xdebug.php 浏览器中执行完毕后,会发现 xdebug这个神奇的扩展,将你这次编译php脚本的过程 作了一个日志文件
放到了你指定的目录下个人 目录在wamp\tmp\xdebug
你会发现目录下生成一些相似这个东东的样子的文件 : cachegrind.out.1464941130.2696