Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Đã đăng vào thg 8 1, 2017 2:55 SA 2 phút đọc 2 phút đọc

Làm dev thì ai cũng quen với việc debug. Chỉ cần var_dump() là ta có thể biết biến đó đang chứa dữ liệu gì, chạy đến đây có sai không... Nhưng sẽ thật kinh khủng khi phải lần mò var_dump() rồi chạy lại code hết chỗ này đến chỗ kia. Lúc này IDE mới chứng tỏ sự khác biệt với những editor. Hãy quên đi var_dump(), print_r(), die, với IDE bạn chỉ cần click chọn chỗ cần debug, sau đó request. Pum! toàn bộ nội dung cần debug ở từng phần, từng function sẽ hiển thị cho bạn. Bài viết này sử dụng PHPStorm để debug.

Install Xdebug

macOS

brew install php71-xdebug

ubuntu

sudo apt-get install php-xdebug

Sau đó restart server

Config php.ini

Thêm vào file php.ini

[Xdebug]
zend_extension_ts=/usr/local/opt/php71-xdebug/xdebug.so
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"

Path /usr/local/opt/php71-xdebug/xdebug.so tùy theo nơi đặt xdebug của bạn.

Config PHPStorm

Chọn Run > Edit Configurations... Click button + để thêm config mới. Ở đây lấy ví dụ là PHP Web Application Click button

sudo apt-get install php-xdebug
0 ở phần Server để cấu hình server Click button + ở dialog Servers. Thêm thông tin về server. Click OK Khi đó ta đã config xong phần server để debug. Click OK Nếu server bạn chạy https, cần chỉnh sửa phần Start URL Giờ đến phần thú vị nhất, thực hiện debug. Chọn Run > Debug [name_server] Một tab trình duyệt web sẽ hiển thị thông báo bắt đầu session debug. Không cần quan tâm, bạn cứ tắt tab đó đi. Click button debug listening, để nó chuyển sang trạng thái lắng nghe (màu xanh lá) Bây giờ nó sẽ lắng nghe và break ở bất kỳ chỗ phần code nào ta chọn làm break point (click khoảng trống bên cạnh line number) Thực hiện request để bắt debug. Sử dụng hàng button điều hướng để xem kỹ từng bước chạy của php. Xem thêm: https://www.jetbrains.com/help/phpstorm/debug-tool-window.html#steptoolbar Khi không cần debug thì click button debug listening lần nữa để off debug (màu đỏ)
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Click button
sudo apt-get install php-xdebug
0 ở phần Server để cấu hình server
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Click button + ở dialog Servers. Thêm thông tin về server. Click OK
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Khi đó ta đã config xong phần server để debug. Click OK
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Nếu server bạn chạy https, cần chỉnh sửa phần Start URL
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Giờ đến phần thú vị nhất, thực hiện debug. Chọn Run > Debug [name_server]
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Một tab trình duyệt web sẽ hiển thị thông báo bắt đầu session debug. Không cần quan tâm, bạn cứ tắt tab đó đi. Click button debug listening, để nó chuyển sang trạng thái lắng nghe (màu xanh lá)
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Bây giờ nó sẽ lắng nghe và break ở bất kỳ chỗ phần code nào ta chọn làm break point (click khoảng trống bên cạnh line number)
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Thực hiện request để bắt debug.
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Sử dụng hàng button điều hướng để xem kỹ từng bước chạy của php. Xem thêm: https://www.jetbrains.com/help/phpstorm/debug-tool-window.html#steptoolbar
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Khi không cần debug thì click button debug listening lần nữa để off debug (màu đỏ)
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Debug với Postman

Với postman ta hoàn toàn có thể debug giống như trên web, chỉ cần thêm vào url bạn muốn test tham số

sudo apt-get install php-xdebug
2
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Bonus: Debug với queue của Laravel

Ở trên chúng ta đã biết cách debug với web, giờ là phần nói về debug với queue của Laravel. Chọn Run > Edit Configurations... Click button + để thêm config mới. Chọn PHP Remote Debug Chọn server, đặt tên ide key. Click OK Chọn Run > Debug [name_server] Chạy câu lệnh

sudo apt-get install php-xdebug
4 trong terminal với
sudo apt-get install php-xdebug
5 là ide key đã đặt ở trên. Tiếp theo thì bật debug listening, click break point, chạy
sudo apt-get install php-xdebug
6.
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Chọn server, đặt tên ide key. Click OK
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Chọn Run > Debug [name_server]
Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm
Chạy câu lệnh
sudo apt-get install php-xdebug
4 trong terminal với
sudo apt-get install php-xdebug
5 là ide key đã đặt ở trên. Tiếp theo thì bật debug listening, click break point, chạy
sudo apt-get install php-xdebug
6.

All rights reserved

Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm


Đọc trên để biết chi tiết về tất cả các tính năng mới và cập nhật quan trọng, cùng với một tấn GIF!

  • Php 8: Hỗ trợ cho tất cả các tính năng ngôn ngữ và thậm chí các thuộc tính tùy chỉnh nguồn mở.
  • PHPSTAN và PSALM có thể phát hiện các vấn đề trực tiếp trong trình chỉnh sửa mã hoặc ở chế độ hàng loạt.
  • XDebug 3 với cấu hình được sắp xếp hợp lý và cải tiến trình gỡ lỗi như đồng hồ nội tuyến và gợi ý tương tác.

Đảm bảo tất cả các cấu hình như thế này:

Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

zend_extension = xdebug.so

xdebug.mode = Debug, phát triển

xdebug.start_with_request = Có

xdebug.client_host = localhost

xdebug.client_port = 9003

xdebug.idey = phpstorm

Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm


Hướng dẫn install xdebug 3 phpstorm - cài đặt xdebug 3 phpstorm

Sử dụng xdebug trong phpstorm

Bạn có thể sử dụng một trong những phương pháp sau:

Định cấu hình XDebug của bạn (bằng cách chỉnh sửa php.ini) để cố gắng gỡ lỗi mọi tập lệnh PHP. Tùy chọn chính:

XDebug v2: xdebug.remote_autostart = 1

Xdebug v3: xdebug.start_with_request = Có

Thêm tham số khởi động phiên XDebug vào URL thực tế (xdebug_session_start = {{key}} - http://xdebug.org/docs/remote), ví dụ:?

Pass XDebug Cookie là một trong những tiêu đề (ví dụ: được đặt bởi Bookmarklet hoặc Trình duyệt mở rộng chẳng hạn).

Thanks.