debug-php-3.png

PHP với Visual Code, sử dụng XDebug, PHP Debug trong VSCode

Tình hình là đang muốn xem thử cái $_GET với $_POST của PHP nó hoạt động ra làm sao, vì thế có ý muốn debug xem thử nó thế nào, mà lười cài IDE quá, nặng bome ra, có sẵn cái VSCode đang xài ngon. Loay hoay nãy giờ cũng cài được, vì bị ngáo 2 lần nên note laị thành bài viết này, mình nghĩ chắc cũng sẽ có bạn nào đó trên thế giới này giống mình :p. Rồi …. bắt đầu

PHP với VSCode

Đầu tiên là về PHP với VSCode, nếu VSCode chưa config gì thì khi code PHP với nó thì sẽ hiện ra cái thông báo như sau:

Use-the-setting-php.validate.executablePath

Mặc định thì VSCode chả biết cái file thực thi PHP nó nằm ở đâu cả, nó kêu ta nói cho nó biết đấy. Cách nói: Quăng đoạn này

vào file settings.json (Mặc định nó sẽ nằm trong C:\Users\[user_name]\AppData\Roaming\Code\User), hoặc nhấn Ctrl + ; trong VSCode cho lẹ).  Như này là được.

 PHP-Validate-Setting-VSCode.png

Xdebug cho PHP

Tóm tắt về Xdebug: Xdebug là một thư viện được viết ra để hỗ trợ cho việc debug PHP. (Thay vì ngồi viết mấy đoạn “code for debugging” rồi chèn tứ lung tung trong đống code của bạn để kiếm lỗi).

Trang chủ: https://xdebug.org/

Bạn lên trang chủ tải về, ở đây mình dùng windows, PHP của mình phiên bản 7.1.6, nên mình đã tải cái này

Xdebug-download.png

Cố gắng chọn cho đúng phiên bản PHP trên máy của bạn, để ý cái 64bit với 32bit, …bala…bala. (Mình vừa mất 15 phút nhảm nhí vì tải nhầm bản 64 bit cho cái XAMPP 32 bit của mình @@~, mà coi lại trang chủ của XAMPP thì thấy nó chỉ có phiên bản 32 bit cho windows :v ).

Nó chỉ là cái file *.dll thôi, bạn đừng hoang mang, như file của mình tải thì có tên: php_xdebug-2.5.5-7.1-vc14.dll. Tải về rồi thì quăng nó vào thư mục php/ext, lý thuyết thì bỏ ở đâu cũng được nhưng bỏ ở đây nó thuận theo tự nhiên hơn :v

Mở cái file php.ini lên, thêm đống này vào cuối file. (Nếu như file php.ini của bạn đã tồn tại thì xóa đi, thêm lại chơi)

Kiếm cái dòng output_buffering, cho nó thành Off

output_buffering.png

Chú ý: Ở dòng zend_extension = “Chỗ này điền path dẫn tới file thư viện bạn vừa mới download” (Ví dụ như file của mình thì nó như trên). Đoạn trên là dành cho máy sử dụng XAMPP, cụ thể của mình là bản 7.1.6, nếu bạn sử dụng thứ gì khác thì custom nó lại, xóa hết cũng được nhưng phải giữ lại mấy dòng này:

  • zend_extension = “[Path_to_Xdebug]”
  • xdebug.remote_autostart = 1
  • xdebug.remote_enable = 1

Rồi ok, nếu bạn đang mở webserver thì restart nó (Mình cũng vừa mất nửa tiếng chỉ để phát hiện là mình quên cái bước này @@~), rồi mở trang phpinfo.php của bạn lên, thấy có cái này thì là ok rồi

 xdebug.png

Cài PHP Debug và xài nó

Cài PHP Debug: https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-debug

Xài PHP Debug:

Mình chôm đoạn code trên Tutorialspoint, rồi paste vào VSCode, lưu là test.php, đặt breakpoint như sau

 debug-php-1.png

Xuống tab Debug của VSCode, rồi click vào cái bánh răng nhỏ nhỏ kia, chọn ngôn ngữ debug là PHP, cái danh sách chọn Listen for XDebug, sau đó nhấn cái nút Run màu xanh kia cho nó chạy

 debug-php-1.png

Để đó, mở trình duyệt và mở file test.php lên (Windows mà có hỏi cho phép VSCode qua firewall không thì cứ Accept), rồi giờ ngồi debug thôi :v

debug-php-3.png

Chúc các bạn debug vui vẻ :p

Tham khảo: 

Configuring Visual Studio Code for PHP development

Installing Xdebug for XAMPP with PHP 7.x

Leave a Reply

Your email address will not be published. Required fields are marked *