Xdebug minangka alat debugging lan profiling PHP sing kuat sing mbantu kita nganalisa lan ngoptimalake aplikasi PHP. Ndhukung fitur kayata debugging langkah-langkah, pangukuran kinerja lan nelusuri tumpukan, sing nggawe pemecahan masalah luwih gampang lan menehi wawasan sing luwih apik babagan kode kasebut. Ing ngisor iki minangka pandhuan persiyapan cilik kanggo digunakake ing VSCode.
Instal Xdebug
Minangka conto, kita nginstal Xdebug ing sistem Ubuntu saiki:
sudo apt-get install -y php8.4-xdebug
Pungkasan, kita nggawe direktori sauntara kanggo nyimpen data profil lan nelusuri mengko:
mkdir -p /tmp/xdebug
Konfigurasi Xdebug
Sawise instalasi, kita ngatur Xdebug. Kanggo nindakake iki, kita nyunting jv/php.ini:
vi /etc/php/8.4/fpm/conf.d/custom.ini
Ing ngisor iki minangka konfigurasi dhasar sing wicaksana:
[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
Sawise nggawe pangaturan kasebut, kita miwiti maneh PHP-FPM kanggo ngetrapake pangowahan kasebut:
sudo service php8.4-fpm restart
Konfigurasi VSCode
Kanggo nggunakake Xdebug ing Visual Studio Code, rong ekstensi lan pangaturan konfigurasi dibutuhake. Kita nginstal iki:
- PHP Debug: kanggo fungsi debugging dhasar.
- PHP Profiler: Kanggo nganalisa file cachegrind.
Pungkasan, kita nggawe file konfigurasi launch.json ing folder .vscode proyek sing bakal dianalisis:
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003,
"ignore": ["**/vendor/**/*.php"]
}
]
}
Instal Ekstensi Chrome
Ekstensi helper Xdebug wis mbuktekake dhewe kanggo debugging fleksibel ing browser. Iki ndadekake iku bisa kanggo ngaktifake utawa mateni Xdebug mung yen perlu. Sampeyan uga bisa ngganti mode debug kanthi gampang (contone, kanggo ngalih saka debugging menyang profiling):
Konfigurasi WordPress
Nalika nggunakake Xdebug ing lingkungan WordPress, bisa uga migunani kanggo mateni debugging ing proyek cron nalika sesi debugging aktif. Iki nggawe panjalukan debugging luwih gampang. Kanggo nindakake iki, tambahake baris ing ngisor iki: 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);
}
Kanthi konfigurasi iki kita duwe persiyapan kuat sing ngidini kita kanggo nyegat masalah debugging Komplek kanthi presisi. Apa nemokake bug bandel utawa masalah kinerja fine-tuning - Xdebug ora mung nggawe karya luwih efisien, nanging uga ndadekke kualitas anyar kanggo pembangunan liwat kontrol lan kajelasan kode.