Làm cách nào tôi có thể gỡ lỗi mã php?

Ứng dụng PHP không phải lúc nào cũng là ứng dụng web. Nhiều công cụ dòng lệnh, daemon, ứng dụng xử lý hàng đợi tin nhắn và các loại ứng dụng khác thường chạy trong PHP CLI. Có một số cách để bắt đầu phiên gỡ lỗi PHP CLI. Bạn có thể bắt đầu nó từ bên trong PhpStorm và làm cho nó bắt đầu tập lệnh và đính kèm trình gỡ lỗi vào nó. Ngoài ra, bạn có thể để PhpStorm lắng nghe các kết nối trình gỡ lỗi đến và bắt đầu tập lệnh bên ngoài IDE. Chúng ta sẽ xem xét cả hai lựa chọn

Trước khi bạn bắt đầu gỡ lỗi, hãy đảm bảo rằng bạn đã cài đặt và định cấu hình đúng công cụ gỡ lỗi. PhpStorm hỗ trợ gỡ lỗi bằng hai công cụ phổ biến nhất. Trình gỡ lỗi Xdebug và Zend. Không thể sử dụng đồng thời các công cụ này vì chúng chặn lẫn nhau. Để tránh sự cố này, bạn cần cập nhật các phần tương ứng trong php. ini như được mô tả trong Định cấu hình Xdebug và Định cấu hình Trình gỡ lỗi Zend.

Mở php đang hoạt động. ini trong trình chỉnh sửa.

  1. Trong hộp thoại Cài đặt/Tùy chọn [Ctrl+Alt+S], nhấp vào PHP.

  2. Trên trang PHP mở ra, hãy nhấp vào

    bên cạnh trường Trình thông dịch CLI .

  3. Trong hộp thoại Trình thông dịch CLI mở ra, Tệp cấu hình read-only field shows the path to the active php.ini tập tin. Nhấp vào Mở trong Trình chỉnh sửa .

Bắt đầu phiên sửa lỗi từ PhpStorm

Để bắt đầu gỡ lỗi tập lệnh PHP CLI từ bên trong PhpStorm, hãy thực hiện các bước sau

Tạo Cấu hình Chạy/Gỡ lỗi

PhpStorm sử dụng cấu hình Chạy/Gỡ lỗi để thực thi tập lệnh từ bên trong IDE. Một cấu hình có thể xác định các đối số bổ sung cho trình thông dịch PHP cũng như khởi chạy các lệnh khác trước khi bắt đầu tập lệnh của chúng ta. Chúng tôi sẽ cần cấu hình Chạy/Gỡ lỗi để bắt đầu trình gỡ lỗi từ bên trong PhpStorm

Tạo cấu hình Chạy/Gỡ lỗi cho tập lệnh PHP theo cách thủ công

  1. Tạo cấu hình Chạy/Gỡ lỗi mới bằng cách sử dụng Chạy. Trình đơn Chỉnh sửa cấu hình .

  2. Thêm cấu hình mới của loại PHP Script và cung cấp các tham số cần thiết, chẳng hạn như tập lệnh sẽ được thực thi

  3. Lưu cấu hình Run/Debug đã tạo

Tạo cấu hình Chạy/Gỡ lỗi cho tập lệnh PHP

  • Nhấp chuột phải vào cửa sổ công cụ Dự án và chọn Gỡ lỗi. từ menu ngữ cảnh [đảm bảo chọn mục được đánh dấu bằng

    ]. Ngoài ra, hãy mở tập lệnh trong trình chỉnh sửa, nhấn Alt+Shift+F9 và chọn tập lệnh cần gỡ lỗi.

    IDE sẽ khởi chạy tập lệnh với trình gỡ lỗi được bật và mở cửa sổ công cụ Gỡ lỗi

Khởi chạy Trình gỡ lỗi

Trước khi khởi chạy trình gỡ lỗi, hãy đảm bảo rằng bạn đã đặt điểm ngắt hoặc tùy chọn Ngắt ở dòng đầu tiên trong tập lệnh PHP được bật trên trình gỡ lỗi . Settings/Preferences dialog Ctrl+Alt+S.

  • Nhấp vào

    trên thanh công cụ PhpStorm.

  • Nhấn Alt+Shift+F9

  • Chọn Chạy. Gỡ lỗi từ menu chính.

Chuyển đổi nhanh chóng giữa các trình thông dịch PHP đã định cấu hình

  1. Nhấn Ctrl+Shift+A và bắt đầu nhập Change PHP interpreter. Trong danh sách gợi ý, hãy chọn hành động Thay đổi trình thông dịch PHP .

    Nếu cần, bạn có thể chỉ định phím tắt cho tác vụ này trực tiếp trong danh sách đề xuất bằng cách nhấn Alt+Enter hoặc sau đó như được mô tả trong Định cấu hình phím tắt

  2. Trong menu bật lên mở ra, hãy chọn một trong các trình thông dịch PHP cục bộ hoặc từ xa đã định cấu hình

Trình thông dịch đã chọn sẽ được đặt làm trình thông dịch dự án mặc định trên trang PHP của hộp thoại Cài đặt/Tùy chọn [Ctrl+Alt+S . Điều này cũng sẽ ảnh hưởng đến cấu hình chạy/gỡ lỗi, cấu hình của khung kiểm tra và công cụ chất lượng được đặt để sử dụng trình thông dịch dự án mặc định.

Bắt đầu phiên gỡ lỗi từ dòng lệnh

Trước khi bạn bắt đầu phiên sửa lỗi với PhpStorm khi chạy tập lệnh CLI, hãy đảm bảo rằng bất kỳ yêu cầu nào sau đây đều được đáp ứng

  • Tùy chọn remote_autostart [đối với Xdebug 2] hoặc start_with_request [đối với Xdebug 3] của Xdebug được bật

  • Biến môi trường XDEBUG_CONFIG tồn tại

Lắng nghe các kết nối trình gỡ lỗi đến

Trong PhpStorm, cho phép nghe các kết nối gỡ lỗi đến bằng cách nhấp vào

trên thanh công cụ hoặc chọn Chạy. Bắt đầu lắng nghe các kết nối gỡ lỗi PHP . Điều này sẽ đảm bảo PhpStorm phản ứng khi phiên gỡ lỗi được bắt đầu và tự động mở cửa sổ công cụ gỡ lỗi. Trước khi khởi chạy tập lệnh, hãy đảm bảo rằng bạn đã đặt điểm ngắt hoặc tùy chọn Ngắt ở dòng đầu tiên trong tập lệnh PHP được bật trên trang Gỡ lỗi của < . Settings/Preferences dialog Ctrl+Alt+S.

Bắt đầu tập lệnh với các tùy chọn trình gỡ lỗi

Vì chúng tôi sẽ bắt đầu tập lệnh từ dòng lệnh, chúng tôi sẽ phải đảm bảo rằng tập lệnh được bắt đầu với các cài đặt bắt buộc để bật trình gỡ lỗi

Bắt đầu tập lệnh với Xdebug

Xdebug có nhiều tùy chọn cấu hình khác nhau mà chúng ta có thể sử dụng để cho phép trình thông dịch PHP tiếp cận với PhpStorm. Các tham số này phải được chuyển đến trình thông dịch PHP bằng tham số dòng lệnh -d. Ngoài ra, bạn có thể đặt biến môi trường để không cần cung cấp thông số -d mỗi lần

Bắt đầu tập lệnh với việc gỡ lỗi bằng cách sử dụng công tắc dòng lệnh PHP

  • Khởi chạy PHP với các tùy chọn dòng lệnh sau

    php -dxdebug. chế độ=gỡ lỗi -dxdebug. client_host=127. 0. 0. 1 -dxdebug. client_port=9003 -dxdebug. start_with_request=có đường dẫn/đến/tập lệnh. php

    php -dxdebug. remote_enable=1 -dxdebug. remote_mode=req -dxdebug. remote_port=9000 -dxdebug. remote_host=127. 0. 0. 1 -dxdebug. remote_connect_back=0 đường dẫn/đến/tập lệnh. php

Bắt đầu tập lệnh với việc gỡ lỗi bằng biến môi trường

  1. Đặt biến môi trường cấu hình Xdebug

    • Cho cửa sổ

      đặt XDEBUG_MODE=gỡ lỗi& đặt XDEBUG_SESSION=1

      đặt XDEBUG_CONFIG=remote_enable=1 remote_mode=req remote_host=127. 0. 0. 1 remote_port=9000 remote_connect_back=0

    • Đối với macOS / Linux

      xuất XDEBUG_MODE=gỡ lỗi XDEBUG_SESSION=1

      xuất XDEBUG_CONFIG="remote_enable=1 remote_mode=req remote_host=127. 0. 0. 1 remote_port=9000 remote_connect_back=0"

  2. Bắt đầu kịch bản bình thường

    đường dẫn php/đến/tập lệnh. php

    Theo tùy chọn, bạn có thể sử dụng cài đặt remote_autostart [đối với Xdebug 2] hoặc start_with_request [đối với Xdebug 3] của Xdebug để luôn bắt đầu phiên gỡ lỗi cho mọi tập lệnh được chạy

Bắt đầu tập lệnh với Zend Debugger

Trình gỡ lỗi Zend có nhiều tùy chọn cấu hình khác nhau mà chúng ta có thể sử dụng để cho phép trình thông dịch PHP tiếp cận với PhpStorm. Các tham số này phải được chuyển đến trình thông dịch PHP bằng biến môi trường

Bắt đầu tập lệnh với gỡ lỗi

  1. Đặt biến môi trường QUERY_STRING

    đặt QUERY_STRING=start_debug=1&debug_host=127. 0. 0. 1&no_remote=1&debug_port=10137&debug_stop=1

    xuất QUERY_STRING="start_debug=1&debug_host=127. 0. 0. 1&no_remote=1&debug_port=10137&debug_stop=1"

  2. Bắt đầu kịch bản bình thường

    đường dẫn php/đến/tập lệnh. php

Tùy chọn, để cho PhpStorm biết cấu hình ánh xạ đường dẫn nào sẽ được sử dụng cho kết nối từ một máy nhất định, giá trị của biến môi trường PHP_IDE_CONFIG phải được đặt thành serverName=SomeName, trong đó SomeName là tên của máy chủ được định cấu hình trên < . Trang Máy chủ PHP | Servers của hộp thoại Cài đặt/Tùy chọn [Ctrl+Alt+S].

đặt PHP_IDE_CONFIG=serverName=SomeName

xuất PHP_IDE_CONFIG="serverName=SomeName"

Nếu biến môi trường này không được đặt, bạn sẽ được nhắc chỉ định ánh xạ đường dẫn theo cách thủ công sau khi IDE phát hiện kết nối Xdebug đến

gỡ lỗi

Khi tập lệnh được bắt đầu, PhpStorm sẽ mở cửa sổ công cụ Gỡ lỗi và ngắt tại điểm dừng đầu tiên được đặt trong tập lệnh. Bây giờ, bạn có thể tiếp tục gỡ lỗi tập lệnh PHP CLI như được mô tả trong Kiểm tra chương trình bị treo

Nếu tập lệnh đang được sửa lỗi không phải là một phần của dự án đang mở trong PhpStorm, IDE sẽ vẫn mở tập lệnh trong trình chỉnh sửa và tạm dừng thực thi ở câu lệnh đầu tiên. Điều này giúp bạn có thể nhanh chóng gỡ lỗi bất kỳ tập lệnh PHP CLI nào, ngay cả khi chưa có dự án PhpStorm nào cho tập lệnh đó

Bạn có thể gỡ lỗi PHP trong trình duyệt không?

A. Bạn có thể dễ dàng gỡ lỗi PHP trong Chrome bằng tiện ích mở rộng đơn giản có tên Bảng điều khiển PHP . Chỉ cần cài đặt công cụ sửa lỗi PHP này từ cửa hàng Chrome trực tuyến và bắt đầu ghi nhật ký lỗi, cảnh báo, ngoại lệ và kết xuất vars trên trình duyệt Chrome của bạn.

Các công cụ sửa lỗi cho PHP là gì?

6 công cụ sửa lỗi PHP hàng đầu dành cho nhà phát triển thông minh .
Krumo
Thanh gỡ lỗi PHP
Pinba
Xdebug
Rất tiếc

Bạn có thể gỡ lỗi PHP trong Visual Studio không?

Công cụ PHP dành cho Visual Studio cho phép gỡ lỗi các ứng dụng dòng lệnh PHP . Để khởi chạy tập lệnh của bạn với các đối số dòng lệnh nhất định, hãy chèn chúng dưới dạng thuộc tính Gỡ lỗi. Nhấp chuột phải vào dự án của bạn trong Solution Explorer và chọn Thuộc tính, sau đó chọn tab Gỡ lỗi.

Chủ Đề