Xdebug — це потужний інструмент для налагодження та профілювання PHP, який допомагає аналізувати й оптимізувати програми PHP. Він підтримує такі функції, як покрокове налагодження, вимірювання продуктивності та трасування стека, що значно полегшує усунення несправностей і забезпечує краще розуміння коду. Нижче наведено невеликий посібник із налаштування для використання в VSCode.
Встановіть Xdebug
Як приклад, ми встановлюємо Xdebug на поточну систему Ubuntu:
sudo apt-get install -y php8.4-xdebug
Нарешті, ми створюємо тимчасовий каталог для подальшого зберігання даних профілювання та трасування:
mkdir -p /tmp/xdebug
Налаштувати Xdebug
Після встановлення ми налаштовуємо Xdebug. Для цього редагуємо його uk/php.ini:
vi /etc/php/8.4/fpm/conf.d/custom.ini
Нижче наведено розумну базову конфігурацію:
[xdebug]
; mode (see: https://xdebug.org/docs/all_settings#mode)
; reasonable default
xdebug.mode=debug,profile
; disabled
;xdebug.mode=off
; step debugging
;xdebug.mode=debug
; performance profiling (be aware of load/space)
;xdebug.mode=profile
; trace profiling (record args)
;xdebug.mode=trace
; starting mode
; always (not recommended)
;xdebug.start_with_request=yes
; only when specific get parameters / cookies are set
; (?XDEBUG_TRIGGER=1, ?XDEBUG_PROFILE=1, ?XDEBUG_TRACE=1, ?XDEBUG_SESSION=1)
; this is best in conjunction with Chrome extension "Xdebug helper"
xdebug.start_with_request=trigger
; folder for analyzing profile dumps
xdebug.output_dir="/tmp/xdebug"
; not needed, since it is already in /etc/php/8.4/fpm/conf.d/20-xdebug.ini
;zend_extension=xdebug.so
Після внесення цих коригувань ми перезапускаємо PHP-FPM, щоб застосувати зміни:
sudo service php8.4-fpm restart
Налаштуйте VSCode
Щоб використовувати Xdebug у Visual Studio Code, потрібні два розширення та налаштування конфігурації. Ми встановлюємо це:
- Налагодження PHP: для основних функцій налагодження.
- PHP Profiler: Для аналізу файлів cachegrind.
Нарешті, ми створюємо файл конфігурації launch.json у папці .vscode проекту, який потрібно проаналізувати:
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003,
"ignore": ["**/vendor/**/*.php"]
}
]
}
Установіть розширення Chrome
Допоміжне розширення Xdebug зарекомендувало себе як гнучке налагодження у браузері. Це дає змогу вмикати чи вимикати Xdebug лише за потреби. Ви також можете легко змінити режим налагодження (наприклад, переключитися з налагодження на профілювання):

Налаштувати WordPress
Під час використання Xdebug у середовищі WordPress може бути корисно вимкнути налагодження в завданнях cron, коли активний сеанс налагодження. Це полегшує налагодження запитів. Для цього додайте такий рядок до: wp-config.php
a:
// disable wp cron on xdebug sessions
if (function_exists('xdebug_is_debugger_active') && xdebug_is_debugger_active()) {
define('DISABLE_WP_CRON', true);
}
Завдяки цій конфігурації ми маємо потужне налаштування, яке дозволяє нам точно вирішувати складні проблеми налагодження. Незалежно від того, чи йдеться про виявлення впертих помилок чи для тонкого налаштування продуктивності, Xdebug не тільки робить роботу ефективнішою, але й забезпечує нову якість розробки завдяки контролю та чіткості коду.