XDebug және PHPStorm көмегімен debug жасау

Кеш жарық достар. Шәйнектен осы аударманы қарсы алыңыздар. PHP код жазатындарға пайдасы тиеріне сенімдімін. XDebug пен PHPStorm екеуі арқасында көптеген echo мен print_r жазудан қалдым. Саған да соны кеңес беремін.

XDebug қосымшасында автоқосылу мүмкіндігі бар. Жай ғана breakpoint қойып тастап, сайтыңызды браузерде ашсаңыз болды. IDE керек жерді өзі қағып алады.

Сонымен, менің баптауларым:
  • Веб-сервер — OpenServer 4.8.8
  • PHP 5.4.17
  • XDebug 2.2.3
  • IDE PhpStorm 7.1.

1. XDebug баптауы

php.ini баптаулар файлында xdebug қосымшасын қосамыз және әртүрлі параметрлерді баптаймыз, мысалы:
zend_extension="%php-ге дейінгі жол%/ext/php_xdebug.dll"
;осы баптау автоқосылуға жауап береді
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_handler="dbgp"
xdebug.remote_host="localhost"
;портты 9000 деп те көрсетуге болады, бірақ openserver-де ол порт php үшін резервтелген
xdebug.remote_port=9001
xdebug.remote_mode=req
;IDE-ге арналған кілт (кез-келген болуы мүмкін) кейінірек керек болады
xdebug.idekey="PHPSTORM"


2. PHPStorm баптауы

Интерпретаторды баптаймыз.




Енді серверді қосу керек, егер сервер локальде орнатылған болса Host деген жерге — localhost деп көрсетесіз, егер сервер қашықтықта орнатылған болса, ip адрес немесе домен атын көрсетіңіз. Осы жердегі хост аты мен php.ini файлында көрсетілген хост аттары бірдей болуы керек.



XDebug баптаймыз. Портты php.ini файлынан аламыз (9001). Егер сізге xdebug автоматты түрде breakpoint-та тоқтауын қаламасаңыз төменгі екі чекбокстарды алып тастаңыз.



Мына жердегі мәндерді тағы да php.ini файлынан аламыз: IDE key -> xdebug.idekey, Host -> xdebug.remote_host, Port -> xdebug.remote_port.



Осымен баптау аяқталды. Енді пайдалана беруге болады.

Пайдалану.

Алдымен breakpoint-тарды қойып тастайсыз және XDebug портын тыңдауды қосасыз.





IDE breakpoint-тарды жасыл қоңызды баспай-ақ автоматты түрде қағып алатын болады. Бұл мәлімет біреу міреуге пайдалы болып қалар деген үміттемін.

  • +4
0 пікір
Тек тіркелген қолданушылар ғана пікір қалдыра алады.