Hibakeresés PHP-ben Xdebug segítségével

Az Xdebug egy hatékony PHP hibakereső és profilkészítő eszköz, amely segít a PHP alkalmazások elemzésében és optimalizálásában. Támogatja az olyan funkciókat, mint a lépésről lépésre történő hibakeresés, a teljesítménymérés és a veremkövetés, ami sokkal könnyebbé teszi a hibaelhárítást és jobb betekintést nyújt a kódba. Az alábbiakban egy kis beállítási útmutató található a VSCode-on belüli használatra.


Telepítse az Xdebug-ot

Példaként telepítjük az Xdebugot egy jelenlegi Ubuntu rendszerre:

sudo apt-get install -y php8.4-xdebug

Végül létrehozunk egy ideiglenes könyvtárat a profilalkotási és nyomkövetési adatok későbbi tárolására:

mkdir -p /tmp/xdebug

Az Xdebug konfigurálása

A telepítés után konfiguráljuk az Xdebugot. Ehhez szerkesztjük hu/php.ini:

vi /etc/php/8.4/fpm/conf.d/custom.ini

A következő egy értelmes alapkonfiguráció:

[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

A módosítások elvégzése után újraindítjuk a PHP-FPM-et a módosítások alkalmazásához:

sudo service php8.4-fpm restart

VSCode konfigurálása

Az Xdebug Visual Studio Code programban való használatához két bővítményre és egy konfigurációs módosításra van szükség. Ezt telepítjük:

Végül létrehozzuk a launch.json konfigurációs fájlt az elemezni kívánt projekt .vscode mappájában:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003,
            "ignore": ["**/vendor/**/*.php"]
        }
    ]
}

Telepítse a Chrome-bővítményt

Az Xdebug helper kiterjesztés bevált a böngészőben történő rugalmas hibakeresésben. Ez lehetővé teszi az Xdebug engedélyezését vagy letiltását csak szükség esetén. Könnyedén módosíthatja a hibakeresési módot is (például a hibakeresésről a profilalkotásra válthat):

A WordPress konfigurálása

Ha az Xdebugot WordPress környezetben használja, hasznos lehet letiltani a hibakeresést a cron-feladatokon belül, amikor egy hibakereső munkamenet aktív. Ez megkönnyíti a hibakeresési kéréseket. Ehhez adja hozzá a következő sort: 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);
}

Ezzel a konfigurációval egy hatékony beállítással rendelkezünk, amely lehetővé teszi az összetett hibakeresési problémák precíz megoldását. Akár makacs hibákat talál, akár a teljesítményproblémák finomhangolása – az Xdebug nemcsak hatékonyabbá teszi a munkát, hanem új minőséget is hoz a fejlesztésbe a kód ellenőrzése és egyértelműsége révén.

Vissza