Làm cách nào để bật chế độ gỡ lỗi PHP?

For me, just outputting variables only works when I know a method should be broken.

I use Xdebug in PHP Storm (available on other IDE's and editors as well)
It allows me to use line breaks and fully inspect anything that's set and how their values are changed and allows me to call single method even at (paused) runtime to see what behaviour the method really gives at any given point, which gives me a much better insight on how my code works and how to get it to work like it should.

I wholeheartedly recomend anyone to try a fuller-fledged debugger like that!

Không ai thích quá trình gỡ lỗi mã của họ. Tuy nhiên, nếu bạn muốn xây dựng các ứng dụng web tuyệt vời, điều quan trọng là bạn phải hiểu kỹ quy trình

Bài viết này chia nhỏ các nguyên tắc cơ bản về gỡ lỗi trong PHP, giúp bạn hiểu các thông báo lỗi của PHP và giới thiệu cho bạn một số công cụ hữu ích để giúp quá trình này bớt khó khăn hơn một chút

Làm công việc mặt đất của bạn

Điều quan trọng là bạn phải định cấu hình PHP chính xác và viết mã của mình theo cách sao cho nó tạo ra các lỗi có ý nghĩa vào đúng thời điểm. Ví dụ: cách tốt nhất là bật báo cáo lỗi ở mức chi tiết trên nền tảng phát triển của bạn. Tuy nhiên, đây có lẽ không phải là một ý tưởng tuyệt vời trên (các) máy chủ sản xuất của bạn. Trong môi trường trực tiếp, bạn không muốn gây nhầm lẫn cho người dùng chân chính hoặc cung cấp cho người dùng ác ý quá nhiều thông tin về hoạt động bên trong trang web của bạn

Vì vậy, với suy nghĩ đó, hãy nói về vấn đề quá phổ biến “Tôi không nhận được thông báo lỗi”. Điều này thường xảy ra do lỗi cú pháp trên nền tảng mà nhà phát triển đã không thực hiện đúng công việc cơ bản của họ. Trước tiên, bạn nên bật display_errors. Điều này có thể được thực hiện trong php của bạn. ini hoặc ở đầu mã của bạn như thế này

ini_set('display_errors', 'On');

Mẹo. Trong các ví dụ mã này, tôi bỏ qua thẻ PHP đóng (?>). Nó thường được coi là một thực hành tốt để làm như vậy trong các tệp chỉ chứa mã PHP để tránh vô tình chèn khoảng trắng và tất cả các lỗi quá phổ biến "tiêu đề đã được gửi"

Tiếp theo, bạn sẽ cần đặt mức báo cáo lỗi. Theo mặc định, PHP 4 và 5 không hiển thị các thông báo PHP có thể quan trọng trong việc gỡ lỗi mã của bạn (sớm nói thêm về điều đó). Các thông báo được tạo bởi PHP cho dù chúng có được hiển thị hay không, vì vậy việc triển khai mã với 20 thông báo được tạo sẽ ảnh hưởng đến chi phí hoạt động của trang web của bạn. Vì vậy, để đảm bảo các thông báo được hiển thị, hãy đặt mức báo cáo lỗi trong tệp php của bạn. ini hoặc sửa mã thời gian chạy của bạn thành như thế này

ini_set('display_errors', 'On');
error_reporting(E_ALL);

Mẹo. E_ALL là một hằng số nên đừng nhầm lẫn khi đặt nó trong dấu ngoặc kép

Với PHP 5, bạn cũng nên bật mức báo cáo lỗi E_STRICT. E_STRICT hữu ích để đảm bảo bạn đang mã hóa bằng các tiêu chuẩn tốt nhất có thể. Ví dụ: E_STRICT trợ giúp bằng cách cảnh báo bạn rằng bạn đang sử dụng một chức năng không dùng nữa. Đây là cách kích hoạt nó trong thời gian chạy

________số 8_______

Điều đáng nói là trên nền tảng phát triển của bạn, bạn thường nên thực hiện những thay đổi này trong tệp php của mình. ini thay vì trong thời gian chạy. Điều này là do nếu bạn gặp lỗi cú pháp với các tùy chọn này được đặt trong mã của bạn chứ không phải trong tệp php. ini, tùy thuộc vào thiết lập của bạn, bạn có thể thấy một trang trống. Tương tự như vậy, điều đáng chú ý là nếu bạn đang đặt các giá trị này trong mã của mình, thì một câu lệnh có điều kiện có thể là một ý tưởng hay để tránh các cài đặt này vô tình được triển khai vào môi trường trực tiếp

Tôi đang xem loại lỗi nào?

Như với hầu hết các ngôn ngữ, các lỗi của PHP có vẻ hơi bí truyền, nhưng thực tế chỉ có 4 loại lỗi chính mà bạn cần nhớ

1. Lỗi cú pháp

Lỗi cú pháp hoặc lỗi phân tích cú pháp thường do lỗi đánh máy trong mã của bạn. Ví dụ: thiếu dấu chấm phẩy, dấu ngoặc kép, dấu ngoặc nhọn hoặc dấu ngoặc đơn. Khi bạn gặp lỗi cú pháp, bạn sẽ nhận được lỗi tương tự như thế này

Parse error: syntax error, unexpected T_ECHO in /Document/Root/example.php on line 6

Trong trường hợp này, điều quan trọng là bạn phải kiểm tra dòng phía trên dòng được trích dẫn trong lỗi (trong trường hợp này là dòng 5) bởi vì mặc dù PHP đã gặp phải điều gì đó không mong muốn ở dòng 6, thông thường đó là lỗi đánh máy ở dòng trên gây ra lỗi. . Đây là một ví dụ

ini_set('display_errors', 'On');
error_reporting(E_ALL);

$sSiteName = “Blog nhà trên cây”
tiếng vang $sSiteName;

Trong ví dụ này mình đã bỏ dấu chấm phẩy ở dòng 5, tuy nhiên PHP lại báo lỗi ở dòng 6. Nhìn vào một dòng ở trên, bạn có thể phát hiện và khắc phục sự cố

Mẹo. Trong ví dụ này, tôi đang sử dụng Ký hiệu Hungary. Việc áp dụng tiêu chuẩn mã hóa này có thể hỗ trợ gỡ lỗi mã trong khi làm việc cộng tác hoặc trên một đoạn mã bạn đã viết cách đây một thời gian. Chữ cái đứng đầu biểu thị kiểu biến tức là việc xác định kiểu biến rất nhanh chóng và đơn giản. Điều này có thể hỗ trợ phát hiện những điểm bất thường cũng có thể giúp làm nổi bật bất kỳ lỗi logic tiềm ẩn nào.

2. cảnh báo

Cảnh báo không phải là công cụ giải quyết như lỗi cú pháp. PHP có thể đối phó với một cảnh báo, tuy nhiên, nó biết rằng có thể bạn đã mắc lỗi ở đâu đó và đang thông báo cho bạn về điều đó. Cảnh báo thường xuất hiện vì những lý do sau

  1. Tiêu đề đã được gửi. Hãy thử kiểm tra khoảng trắng ở đầu mã của bạn hoặc trong các tệp bạn đang đưa vào
  2. Bạn đang truyền một số tham số không chính xác cho một hàm
  3. Tên đường dẫn không chính xác khi bao gồm tệp

3. thông báo

Các thông báo sẽ không làm dừng quá trình thực thi mã của bạn, nhưng chúng có thể rất quan trọng trong việc theo dõi một lỗi khó chịu. Thường thì bạn sẽ thấy rằng mã đang hoạt động hoàn hảo trong môi trường sản xuất bắt đầu đưa ra các thông báo khi bạn đặt error_reporting thành E_ALL

Một thông báo phổ biến mà bạn sẽ gặp phải trong quá trình phát triển là

>Notice: Undefined index: FullName in /Document/Root/views/userdetails.phtml on line 55

Thông tin này có thể cực kỳ hữu ích trong việc gỡ lỗi ứng dụng của bạn. Giả sử bạn đã thực hiện một truy vấn cơ sở dữ liệu đơn giản và lấy một hàng dữ liệu người dùng từ một bảng. Để trình bày trong dạng xem của bạn, bạn đã chỉ định các chi tiết cho một mảng có tên là $aUserDetails. Tuy nhiên, khi bạn lặp lại $a User Details[‘First Name’] trên dòng 55 thì không có đầu ra và PHP đưa ra thông báo ở trên. Trong trường hợp này, thông báo bạn nhận được thực sự có thể hữu ích

PHP đã thông báo cho chúng tôi một cách hữu ích rằng khóa FirstName không được xác định nên chúng tôi biết rằng đây không phải là trường hợp bản ghi cơ sở dữ liệu là NULL. Tuy nhiên, có lẽ chúng ta nên kiểm tra câu lệnh SQL của mình để đảm bảo rằng chúng ta đã thực sự truy xuất tên của người dùng từ cơ sở dữ liệu. Trong trường hợp này, thông báo đã giúp chúng tôi loại trừ một vấn đề tiềm ẩn, từ đó hướng chúng tôi đến nguồn có khả năng gây ra vấn đề của chúng tôi. Nếu không có thông báo, điểm dừng đầu tiên có khả năng của chúng tôi sẽ là bản ghi cơ sở dữ liệu, tiếp theo là truy ngược lại logic của chúng tôi để cuối cùng tìm thấy thiếu sót của chúng tôi trong SQL

4. Lỗi nghiêm trọng

Lỗi nghiêm trọng nghe có vẻ đau đớn nhất trong bốn lỗi nhưng trên thực tế thường dễ giải quyết nhất. Tóm lại, điều đó có nghĩa là PHP hiểu những gì bạn đã yêu cầu nhưng không thể thực hiện yêu cầu. Cú pháp của bạn đúng, bạn đang nói ngôn ngữ của nó nhưng PHP không có những gì nó cần để tuân thủ. Lỗi nghiêm trọng phổ biến nhất là một lớp hoặc chức năng không xác định và lỗi được tạo ra thường dẫn thẳng đến gốc rễ của vấn đề

Fatal error: Call to undefined function create() in /Document/Root/example.php on line 23

Sử dụng var_dump() để hỗ trợ gỡ lỗi của bạn

var_dump() là một hàm PHP gốc hiển thị thông tin có cấu trúc, có thể đọc được bằng con người, về một (hoặc nhiều) biểu thức. Điều này đặc biệt hữu ích khi xử lý các mảng và đối tượng vì var_dump() hiển thị cấu trúc của chúng theo cách đệ quy mang lại cho bạn bức tranh tốt nhất có thể về những gì đang diễn ra. Đây là một ví dụ về cách sử dụng var_dump() trong ngữ cảnh

Dưới đây, tôi đã tạo một mảng điểm số mà người dùng đạt được nhưng một giá trị trong mảng của tôi khác biệt một cách tinh tế so với các điểm khác, var_dump() có thể giúp chúng tôi khám phá sự khác biệt đó

 7,'Linda' => 4,'Tony' => 5,'Alice' => '9'); echo '
'; var_dump($aUserScores); echo '
';

Tip: Wrap var_dump() in

 tags to aid readability.

Đầu ra từ var_dump() sẽ như thế này

array(4) { ["Ben"]=> int(7) ["Linda"]=> int(4) ["Tony"]=> int(5) ["Alice"]=> string(1) "9" }

Như bạn có thể thấy var_dump cho chúng ta biết rằng $aUserScores là một mảng có bốn cặp khóa/giá trị. Ben, Linda và Tony đều có các giá trị (hoặc điểm số) được lưu dưới dạng số nguyên. Tuy nhiên, Alice đang hiển thị dưới dạng một chuỗi có độ dài một ký tự

Nếu chúng ta quay lại mã của tôi, chúng ta có thể thấy rằng tôi đã bọc nhầm điểm 9 của Alice trong dấu ngoặc kép khiến PHP hiểu nó là một chuỗi. Bây giờ, sai lầm này sẽ không có tác động bất lợi lớn, tuy nhiên, nó thể hiện sức mạnh của var_dump() trong việc giúp chúng ta nhìn rõ hơn các mảng và đối tượng của mình

Mặc dù đây là một ví dụ rất cơ bản về cách thức hoạt động của var_dump() nhưng nó có thể được sử dụng tương tự để kiểm tra các mảng hoặc đối tượng đa chiều lớn. Nó đặc biệt hữu ích trong việc khám phá xem bạn có dữ liệu chính xác được trả về từ truy vấn cơ sở dữ liệu hay khi khám phá phản hồi JSON từ Twitter chẳng hạn

ini_set('display_errors', 'On');
error_reporting(E_ALL);

$sJsonUrl = 'http. //Tìm kiếm. Twitter. com/xu hướng. json’;

$sJson = file_get_contents($sJsonUrl,0,NULL,NULL);
$oTrends = json_decode($sJson);

echo ‘

’;
var_dump($oTrends);
tiếng vang ‘
’;

Các công cụ hữu ích cần xem xét khi gỡ lỗi

Cuối cùng, tôi muốn chỉ ra một vài công cụ hữu ích mà tôi đã sử dụng để giúp tôi trong quá trình sửa lỗi. Tôi sẽ không đi vào chi tiết về cài đặt và định cấu hình các tiện ích mở rộng và tiện ích bổ sung này, nhưng tôi muốn đề cập đến chúng vì chúng thực sự có thể giúp cuộc sống của chúng ta dễ dàng hơn

Xdebug

Xdebug là một tiện ích mở rộng PHP nhằm mục đích trợ giúp trong quá trình gỡ lỗi các ứng dụng của bạn. Xdebug cung cấp các tính năng như

  • Tự động theo dõi ngăn xếp khi có lỗi
  • Nhật ký cuộc gọi chức năng
  • Hiển thị các tính năng như đầu ra var_dump() nâng cao và thông tin về phạm vi mã

Xdebug có cấu hình cao và thích ứng với nhiều tình huống. Ví dụ: dấu vết ngăn xếp (cực kỳ hữu ích để theo dõi ứng dụng của bạn đang làm gì và khi nào) có thể được định cấu hình thành bốn cấp độ chi tiết khác nhau. Điều này có nghĩa là bạn có thể điều chỉnh độ nhạy của đầu ra của Xdebug giúp bạn có được thông tin chi tiết về hoạt động của ứng dụng của bạn

Dấu vết ngăn xếp hiển thị cho bạn vị trí xảy ra lỗi, cho phép bạn theo dõi lệnh gọi hàm và nêu chi tiết số dòng gốc của các sự kiện này. Tất cả đều là thông tin tuyệt vời để gỡ lỗi mã của bạn

Mẹo. Theo mặc định, Xdebug giới hạn đầu ra var_dump() ở ba mức đệ quy. Bạn có thể muốn thay đổi điều này trong xdebug của mình. ini bằng cách đặt xdebug. var_display_max_depth bằng một số phù hợp với nhu cầu của bạn

Hãy xem hướng dẫn cài đặt của Xdebug để bắt đầu

chữa cháyPHP

Đối với tất cả những người hâm mộ FireBug ngoài kia, FirePHP là một thư viện PHP nhỏ thực sự hữu ích và tiện ích bổ sung Firefox thực sự có thể giúp ích cho việc phát triển AJAX

Về cơ bản, FirePHP cho phép bạn ghi thông tin gỡ lỗi vào bảng điều khiển Firebug bằng một lệnh gọi phương thức đơn giản như vậy

array(4) { ["Ben"]=> int(7) ["Linda"]=> int(4) ["Tony"]=> int(5) ["Alice"]=> string(1) "9" }
0

Ví dụ: trong trường hợp tôi đang thực hiện một yêu cầu tìm kiếm AJAX, có thể hữu ích khi trả lại chuỗi SQL mà mã của tôi đang xây dựng để tôi có thể đảm bảo mã của mình hoạt động chính xác. Tất cả dữ liệu được ghi vào bảng điều khiển Firebug được gửi qua các tiêu đề phản hồi và do đó không ảnh hưởng đến trang được trình duyệt hiển thị

Cảnh báo. Như với tất cả thông tin gỡ lỗi, loại dữ liệu này không được dùng chung. Nhược điểm của việc phải thêm các lệnh gọi phương thức FirePHP vào PHP của bạn là trước khi đưa vào hoạt động, bạn sẽ phải loại bỏ tất cả các lệnh gọi này hoặc thiết lập một câu lệnh điều kiện dựa trên môi trường để xác định xem có bao gồm mã gỡ lỗi hay không

Bạn có thể cài đặt tiện ích Firefox tại trang web của FirePHP và cũng có thể lấy các lib PHP ở đó. Ồ, và đừng quên nếu bạn chưa cài đặt FireBug, bạn cũng sẽ cần điều đó

Tóm lại là…

Hy vọng rằng trong suốt quá trình của bài viết này, bạn đã học được cách làm nền tảng của mình bằng cách chuẩn bị PHP cho quá trình gỡ lỗi; . Tương tự như vậy, tôi hy vọng rằng bạn sẽ thấy Xdebug và FirePHP hữu ích và chúng sẽ giúp cuộc sống của bạn dễ dàng hơn trong chu kỳ phát triển của bạn

Như tôi đã đề cập và tôi thực sự không thể nói đủ điều này, hãy luôn nhớ xóa hoặc chặn đầu ra gỡ lỗi của bạn khi bạn đưa trang web của mình vào sản xuất, xét cho cùng, không có gì tệ hơn việc tất cả người dùng của bạn có thể đọc được thông tin về bạn

Có một mẹo gỡ lỗi tuyệt vời để chia sẻ?

Bài viết này được viết bởi Kieran Masterton

BẮT ĐẦU NGAY BÂY GIỜ

Học với Treehouse chỉ 30 phút mỗi ngày có thể dạy cho bạn những kỹ năng cần thiết để đạt được công việc mà bạn hằng mơ ước

Bắt đầu

  • mã số
  • gỡ lỗi
  • học lập trình
  • php

20 phản hồi cho “Cách gỡ lỗi trong PHP”

  1. David A. Gray, MBA cho biết

    Tôi RẤT thất vọng với XDebug, thứ mà tôi vẫn chưa làm việc được trên Windows. Điều này để lại cho tôi các kỹ thuật sửa lỗi cổ xưa mà tôi đã sử dụng từ những năm 1970. Điều này, cùng với nhiều thứ khác, mang lại cho tôi ấn tượng chung rất XẤU về PHP

    đăng nhập để trả lời

    • Corey Cramer trên nói

      Thiếu rất nhiều ngữ cảnh để cố gắng trở nên hữu ích nhưng bạn đang cố gắng sử dụng ứng dụng khách nào với Xdebug?

      Gỡ lỗi mã bằng Xdebug + PhpStorm (hoặc thực sự là bất kỳ ứng dụng khách nào khác) khiến tôi cảm thấy mình giống như một thuật sĩ có thể kiểm soát thời gian

      đăng nhập để trả lời

  2. Tacnoman cho biết

    Bạn cũng có thể sử dụng dự án Dephpugger
    Thật dễ dàng, vì bạn không cần IDE. Bạn có thể sử dụng trong thiết bị đầu cuối

    https. //trung bình. com/@renatocassino/how-debug-php-applications-with-dephpugger-98cc234d917c

    https. //github. com/tacnoman/dephpugger

    đăng nhập để trả lời

  3. PCMShaper trên đã nói

    Cảm ơn bạn đã hướng dẫn rất hay, đây là cách gỡ lỗi chức năng trong php

    gỡ lỗi hàm ($array) {
    tiếng vang '';
    nếu ( is_array( $array) ) {
    print_r ( $mảng);
    } khác {
    var_dump( $mảng);
    }
    tiếng vang”;
    }
    ?>

    đăng nhập để trả lời

  4. Ole trên anh ấy nói

    Cảm ơn rất nhiều. Những gợi ý này là vàng

    đăng nhập để trả lời

  5. Lacy trên nói

    xin chào. Câu hỏi nhanh hoàn toàn lạc đề
    Bạn có biết cách làm cho trang web của mình thân thiện với thiết bị di động không?
    iphone táo. Tôi đang cố gắng tìm một mẫu hoặc plugin có thể
    có thể giải quyết vấn đề này. Nếu bạn có bất kỳ khuyến nghị, xin vui lòng chia sẻ
    Với sự biết ơn

    đăng nhập để trả lời

  6. Jerry trên anh ấy nói

    Cảm ơn rất nhiều,
    đã giúp tôi rất nhiều

    Tôi đã sử dụng error_log() để viết tin nhắn cho php. tệp nhật ký
    và “xem” việc thực thi một tập lệnh php

    đăng nhập để trả lời

  7. hoang dã trên nói

    Cảm ơn rất nhiều. Thực sự đánh giá cao lời khuyên của bạn

    đăng nhập để trả lời

  8. Errold David trên cho biết

    Đáng kinh ngạc. Hãy tiếp tục phát huy

    đăng nhập để trả lời

  9. nudeaudio super m đánh giá trên said

    Thật tuyệt vời khi truy cập trang web này và đọc quan điểm của tất cả bạn bè về chủ đề của bài đăng này, trong khi tôi cũng rất muốn học hỏi kinh nghiệm

    đăng nhập để trả lời

  10. David trên nói

    Giống. 😉
    Tôi đã mất rất nhiều thời gian để gỡ lỗi nhật thực trong php. Mọi sự giúp đỡ đều được chào đón

    Hãy thêm một số thông tin hữu ích về chủ đề này

    http. //Blog. zxcoders. com/?q=nút/16

    đăng nhập để trả lời

  11. Best Roach Killer on said

    Vòi và đường ống bị rò rỉ có thể là thỏi nam châm lớn thu hút gián
    Độ sạch của Bụi Put có thể là nguồn gốc của bữa ăn của chúng
    Khi bạn sống sót qua một vụ mua bán hời hoặc khi vị trí địa lý của bạn ở lại
    sôi sục phần lớn trong 12 tháng, cách chữa bên ngoài là
    đơn giản không chỉ quan trọng mà còn cần thiết

    đăng nhập để trả lời

  12. nha sĩ balmain on said

    Bây giờ tôi không chắc bạn đang lấy thông tin ở đâu, tuy nhiên chủ đề hay
    Tôi phải dành thời gian học nhiều hơn hoặc làm việc nhiều hơn
    Cảm ơn bạn vì thông tin tuyệt vời tôi đã tìm kiếm thông tin này cho
    nhiệm vụ của tôi

    đăng nhập để trả lời

  13. Sinaru Gunawardena cho biết

    Cám ơn 🙂

    đăng nhập để trả lời

  14. Giải pháp tiếp thị liên kết thực tế - Các tùy chọn trên đã nói

    Trong thị trường hiện nay, nếu một chương trình hoặc hệ thống tiếp thị liên kết
    giá muối của nó, nó sẽ cung cấp một blog quảng cáo web để bạn phát triển

    đăng nhập để trả lời

  15. mac on đã nói

    Tôi đã tìm kiếm hàng giờ về lỗi phân tích cú pháp và đề xuất của bạn là tìm 1 dòng trước dòng lỗi, đã cho tôi manh mối để xem dấu “;” bị thiếu.

    Làm cách nào để bật trình gỡ lỗi trong PHP?

    Phiên gỡ lỗi .
    Bắt đầu ide và mở tệp chứa mã nguồn mà bạn muốn gỡ lỗi
    Đặt điểm dừng tại mỗi dòng mà bạn muốn trình gỡ lỗi tạm dừng. .
    Trong cửa sổ Dự án, điều hướng đến nút dự án hiện tại, nhấp vào nút chuột phải và chọn Gỡ lỗi từ menu bật lên

    Làm cách nào để gỡ lỗi mã PHP trong trình duyệt?

    Q. Làm cách nào để gỡ lỗi PHP trong Chrome? . 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ý các 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.

    Làm cách nào để gỡ lỗi trong PHP?

    Gỡ lỗi PHP .
    Bước 1. Tăng cấp nhật ký. Thêm thông tin luôn tốt hơn. .
    Bước 2. Giữ lại nhật ký. Khi bạn đã tăng cấp nhật ký, bước tiếp theo là bắt đầu giữ lại nhật ký. .
    Bước 3. Cố gắng sao chép hoàn cảnh. .
    Bước 4. Kiểm tra các giả định. .
    Bước 5. Điều chỉnh các thông số kiểm tra và thử lại

    Làm cách nào để gỡ lỗi một dự án PHP?

    Đây là các bước để lập trình PHP. .
    Kiểm tra các phần mở rộng PHP trong Mã VS
    Cài đặt tiện ích mở rộng Gỡ lỗi PHP
    Nhấp vào "tải lại" để tải lại Mã VS
    Cài đặt Xdebug. .
    Bây giờ khi bạn có phiên bản phù hợp, hãy đặt nó vào thư mục PHP/ext
    Tiếp theo, bạn cần cấu hình PHP để sử dụng tiện ích mở rộng và cho phép gỡ lỗi từ xa