Xdebug - Debugger and Profiler Tool for PHP
จะช่วยให้เราสามารถ ติดตาม ตรวจสอบการทำงานของ PHP และหาจุดผิดพลาดได้อย่างรวดเร็ว
ความสามารถหลักของ xdebug
- stack traces
- function traces
- parameter display
- profiling
xdebug ไม่ได้ช่วยให้โปรแกรมเร็วขึ้น แตจะ่ช่วยรายงานข้อผิดพลาด และจุดที่เป็นคอขวด หรือทำงานช้า ให้ผู้พัฒนาโปรแกรมทราบ และทำการแก้ไข
ก่อนการติดตั้ง Xdebug สิ่งที่ต้องมีคือ
Xdebug Windows Module for PHP 5.2.1+
Debug Client
อ่านการติดตั้งได้ที่นี่ และทดสอบการใช้งาน
ดังนั้นในการติดตั้ง
1. copy php_xdebug-2.0.0-5.2.2.dll ไปที่ c:\php\ext\
2.ผมกำหนดค่าดังนี้ใน php.ini
zend_extension_ts="C:\php\ext\php_xdebug-2.0.0-5.2.2.dll"
เล่นกับ Profiling
ผมกำหนด php.ini เพิ่มเติมดังนี้
xdebug.profiler_enable = 1
xdebug.profiler_output_dir = "./"
เ็ป็นการเปิดใช้ profile และ กำหนด output ให้เก็บ path เดียวกับที่ php scritps อยู่
ไฟล์ที่ได้จากการ output จะชื่อ cachegrind.out.1234 ซึ่ง 1234 จะเป็นตัวเลขแบบสุ่ม (ชื่อ output กำหนดไ้้ด้ หาดูเอง)
ไฟล์ดังกล่าวเป็น text file ธรรมดาๆ ซึ่งเก็บประวัติการทำงานของ scripts อ่านพอออก แต่แนะนำว่าใช้โปรแกรม KCachegrind - Profiling Visualization ปิดดูดีกว่า
xdebug ทำ profile ละเอียดขนาดไหน ดูรูปจากโปรแกรม Cachegrind - Profiling Visualization ดีกว่า
เจ๋งใช่ไหมล่ะ ?
มีคนเคยเขียนไว้แล้วอยู่ที่ ตรวจสอบโค้ดและวัดความเร็ว PHP ง่ายๆ ด้วย Xdebug+WinCacheGrind เขียนโดยคุณfew ลองตามอ่านเพิ่มเิติมดูครับ
ใครสนใจ download ก็เลือกได้ระหว่าง
KCachegrind สำหรับ KDE
wincachegrind สำหรับ Windows
... GNOME จะได้ใช้โปรแกรมของ KDE ได้ไหมนี่??
Links
ตรวจสอบโค้ดและวัดความเร็ว PHP ง่ายๆ ด้วย Xdebug+WinCacheGrind