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