បំបាត់កំហុស PHP ជាមួយ Xdebug

Xdebug គឺ​ជា​ឧបករណ៍​បំបាត់​កំហុស PHP និង​ទម្រង់​ឯកសារ​ដ៏​មាន​ឥទ្ធិពល ដែល​ជួយ​យើង​ក្នុង​ការ​វិភាគ និង​បង្កើន​ប្រសិទ្ធភាព​កម្មវិធី PHP ។ វាគាំទ្រលក្ខណៈពិសេសដូចជាការបំបាត់កំហុសជាជំហានៗ ការវាស់វែងការអនុវត្ត និងការតាមដានជង់ ដែលធ្វើឲ្យការដោះស្រាយបញ្ហាកាន់តែងាយស្រួល និងផ្តល់នូវការយល់ដឹងកាន់តែប្រសើរឡើងចំពោះកូដ។ ខាងក្រោមនេះគឺជាការណែនាំអំពីការដំឡើងតូចមួយសម្រាប់ប្រើប្រាស់នៅក្នុង VSCode។


ដំឡើង Xdebug

ជាឧទាហរណ៍ យើងនឹងដំឡើង Xdebug នៅលើប្រព័ន្ធ Ubuntu បច្ចុប្បន្ន:

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

ជាចុងក្រោយ យើងបង្កើតថតបណ្ដោះអាសន្នមួយសម្រាប់ផ្ទុកទិន្នន័យទម្រង់ និងការតាមដាននៅពេលក្រោយ:

mkdir -p /tmp/xdebug

កំណត់រចនាសម្ព័ន្ធ Xdebug

បន្ទាប់ពីដំឡើងរួច យើងកំណត់រចនាសម្ព័ន្ធ Xdebug ។ ដើម្បីធ្វើដូចនេះយើងកែសម្រួលវា។ km/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 ផ្នែកបន្ថែមពីរ និងការកែតម្រូវការកំណត់គឺត្រូវបានទាមទារ។ យើងដំឡើងនេះ។:

ជាចុងក្រោយ យើងបង្កើតឯកសារកំណត់រចនាសម្ព័ន្ធ 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 ក:

// disable wp cron on xdebug sessions
if (function_exists('xdebug_is_debugger_active') && xdebug_is_debugger_active()) {
    define('DISABLE_WP_CRON', true);
}

ជាមួយនឹងការកំណត់រចនាសម្ព័ន្ធនេះ យើងមានការរៀបចំដ៏មានអានុភាពដែលអនុញ្ញាតឱ្យយើងដោះស្រាយបញ្ហាស្មុគ្រស្មាញក្នុងការបំបាត់កំហុសដោយភាពជាក់លាក់។ មិនថាការស្វែងរកកំហុសរឹងរូស ឬបញ្ហាដំណើរការកែតម្រូវ - Xdebug មិនត្រឹមតែធ្វើឱ្យការងារកាន់តែមានប្រសិទ្ធភាពប៉ុណ្ណោះទេ ប៉ុន្តែថែមទាំងនាំមកនូវគុណភាពថ្មីដល់ការអភិវឌ្ឍន៍តាមរយៈការគ្រប់គ្រង និងភាពច្បាស់លាស់លើកូដផងដែរ។

ថយក្រោយ