Работа с XDebug в PhpStorm
Вот отличный ролик от Артём Ивашкевича, в котором подробно описывается работа с XDedug:
Текстовая версия с описанием доступна по ссылке: https://webshake.ru/kurs-php-dlya-nachinayushih/otladka-php-koda-s-pomoshchyu-xdebug-v-phpstorm
Что ещё хотелось бы отметить. Я тестировал работу в операционной системе Linux Mint 19 на PHP 7.4. XDebug устанавливал как расширение PHP с помощью команды:
sudo apt-get install php-xdebug
Также в файл /etc/php/7.4/apache2/php.ini
необходимо добавить следующие строки:
[xdebug] xdebug.idekey="PHPSTORM" xdebug.remote_enable=1 xdebug.remote_handler="dbgp" xdebug.remote_connect_back=1
Настройка XDebug в Docker-е
Пример настройки от Евгения Кувшинова:
Содержимое файла docker-compose.yml
:
version: '3' services: web: image: nginx volumes: - ./web/api.conf:/etc/nginx/conf.d/default.conf ports: - "8081:80" depends_on: - api api: build: context: ./api environment: - PHP_IDE_CONFIG=serverName=XdebugServer volumes: - ./public:/var/www/public - ./api/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini
Содержимое файла api\Dockerfile
:
FROM php:fpm RUN pecl install xdebug \ && docker-php-ext-enable xdebug
Содержимое файла api\xdebug.ini
:
[xdebug] xdebug.remote_enable = true xdebug.remote_host = 172.17.0.1
Содержимое файла web\api.conf
:
server { listen 80; index index.php index.html; root /var/www/public; location / { try_files $uri /index.php?$args; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass api:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; } }
Настройка XDebug в Docker-е от E-Freelancer
Полезные ссылки
- Настройка XDebug в PHP 5.4. https://www.youtube.com/embed/uAotKR2binM
- Настройка XDebug в PHP 5.4. https://medium.com/@chenpohsun_12588/set-debugger-using-xdebug-with-phpstorm-laradock-454e8c2ad0d9
- https://blog.denisbondar.com/post/phpstorm_docker_xdebug
- https://vpawd.ru/articles/quickstart_with_docker_in_phpstorm
- https://www.jetbrains.com/help/phpstorm/debugging-a-php-cli-script.html - запуск XDebug в консоли