\

Facebook


วันพฤหัสบดีที่ 3 เมษายน พ.ศ. 2557

[Xdebug] PHP Debug on Eclipse เซ็ตตัวดีบักเกอร์


พูดถึงวิธีดีบักไฟล์ PHP ถ้าเป็นครั้งแรกที่เริ่มจับใหม่ๆมั่นใจเลยว่าหลายๆคนต้องเคย echo ค่าออกมาทีละบบรทัด อัพเกรดขึ้นมาหน่อยก็ส่อง array ด้วย var_dump() หรือ print_r() แล้วครอบด้วย <pre> ซะ จริงๆแล้วก็แก้ปัญหาได้ดีทีเดียวแต่เมื่อระบบใหญ่ขึ้นเรื่อย อะไรที่ทำงานเร็วกว่าก็ตอบโจทย์ตรงกว่า
บทความนี้รวบรวมเพียง 4 ขั้นตอน กับการเริ่มต้นเป็น PHP developer กับ ide ฟรีๆอย่าง Eclipse ให้สั้นกระชับที่สุด



1. เริ่มต้นจากการ download package ที่เกี่ยวข้องทั้งหมด ได้แก่ Eclipse for PHP (ผมจะโหลดตัวนี้เลย แต่ถ้าใครถนัดแบบติดตั้ง pdt เองก็โดยเฉพาะ extension มาติดตั้งกับอิคริบส์เอง)


2. ตั้งค่า php.ini โดยเอา comment ที่บรรทัด zend_extension = "C:\xampp\php\ext\php_xdebug.dll" , xdebug.remote_enable = 1 และ xdebug.remote_handler = "dbgp" ออกและเซ็ตค่าเป็น 1


3. เปิด Eclipse ขึ้นมาแล้วไปที่เมนู Window > Preference  หา tab Debug จะมีตัวเลือก Debugger : ให้เลือก ใส่ค่าเป็น Xdebug กด apply แล้ว OK



4. ทดสอบสร้างโปรเจกค์ขึ้นมาหนึ่งชิ้น หลังจากนั้น ใช้ php default server เป็นตัวรัน debug mode โดยการกดที่ปุ่มเข้าสู่โหมด debug ที่มุมขวาบนของโปรแกรม แล้วดับเบิลคลิกที่หน้าบรรทัดที่ต้องการหยุด(breakpoint) ในโค๊ด


เมื่อต้องการดีบัก ก็เพียงกดรูปแมลงตัวเขียว โปรแกรมก็จะทำงานจนกระทั่งพบปุ่ม breakpoint จึงจะหยุดที่บรรทัดนั้น ในโหมดนี้เราสามารถดูค่าตัวแปรได้(Watch) ดูลำดับการทำงานได้ ดูเพิ่มเติมที่การดีบักphpขณะรันโปรแกรม แล้วพบกันใหม่ [2weektrain]

ไม่มีความคิดเห็น:

May be like this posts

  • วิธี HOST ไฟล์ JavaScript หรือ CSS ไว้บน DropBox แบบฟรีๆ
    02/08/2017 - 0 Comments
    ผมเขียนบล็อกบน Blogger มีปัญหารที่เจอประจำคือ ไฟล์ JS หรือ CSS ที่ผมปรับแต่งเพิ่มเติมนั้น…
  • [WinForm c#] เบาๆกับโปรแกรม test SQL Connection อย่างง่าย
    12/09/2013 - 0 Comments
    วันนี้ว่างๆ กับวันศุกร์ยมๆ (บรรยากาศเงียบๆ) ทดลองทำโปรแกรม ทดสอบคอนเน็คชั่นด้วย sql server 2008 r2…
  • ลบ .Bak แสนกวนใจใน Edit Plus
    28/05/2013 - 0 Comments
    ลบ .Bak แสนกวนใจใน Edit Plus สำหรับใครที่ใช้ Edit plus เป็น Editor ในการเขียนโค๊ดไม่ว่าจะเป็น html php c/c++…
  • 26/04/2013 - 0 Comments
    เรื่องของ Delegate ในภาษา C# เรื่องนี้ ไม่เคยเจอเลยในตอนเรียน แต่มันก็ไม่ใช่ศาสตร์ขั้นสูงอะไรเลย…
  • [Note] Error บน ASPX และ IIS
    06/07/2015 - 0 Comments
    บทความนี้เก็บโน๊ต error ทั้งหมดที่ผมเคยเจอพร้อมวิธีแก้ น่าจะมีประโยชน์ครับถ้าเจอคล้ายๆกันและเอาไปปรับใช้กับ…
  • แชร์ประสบการณ์โทรเรียก DELL on-site support หลังคอมพัง
    31/05/2017 - 0 Comments
    ส่วนนี้อินโทร (ยาวไปไม่อ่าน ข้าวไปที่ .."ส่วนนี้เริ่มเข้าสาระ") หลังจากกูเกิ้ล…
  • Tip : เล็กๆกับการ Commit SVN
    25/04/2013 - 0 Comments
    Trick เล็กๆน้อยกับการใช้งาน เต่า SVN : จริงๆแล้วการแก้ไข “ไฟล์เดียวกัน”…