XDebug и сервер RESTful с использованием PHPStorm или POSTman


Как я могу получить клиент REST (например, встроенный в PHPStorm или почтальон) для работы с XDebug?

в моей текущей настройке XDebug, используя PHPStorm и букмарклет, предусмотренного Я могу заставить его работать как в Chrome, так и в Firefox - но как только я попробую с POSTman или любым другим клиентом REST, я не могу понять, как это начать.

Ура.

4 60

4 ответа:

пока http://youtrack.jetbrains.com/issue/WI-17031 будет реализован вы можете попробовать один из следующих подходов:

  1. настройка xdebug (путем редактирования php.ini), чтобы попытаться отладить скрипт на PHP (xdebug.remote_autostart = 1)

  2. добавить параметр запуска сеанса xdebug к фактическому URL (XDEBUG_SESSION_START={{KEY}} -- http://xdebug.org/docs/remote ), например: ?XDEBUG_SESSION_START=PHPSTORM

  3. Pass xdebug cookie как один из заголовков (тот, который задается закладка или расширение для браузера, например)

чтобы это работало -- убедитесь, что значок" ручка телефона " активирован (Run | Start Listen for PHP Debug Connection) заранее.

это сводило меня с ума. Я просто обновился до PHP 7.1 и xdebug, который работал, больше не работал. Я обновил xdebug.so файл (Linux) и php --version указывает, что xdebug действительно загружается и работает. Но когда я использовал Postman, отладчик никогда не включался.

вот решение. Если вы используете Apache в качестве сервера, то вам нужно включить PHP 7.1 mods и перезагрузить Apache:sudo service apache2 restart

xdebug.remote_timeout = 60000

работал для меня. Поскольку мой Mac был очень медленным, а удаленный отладчик был отключен после 200 мс (значение по умолчанию)

https://github.com/tacnoman/dephpugger Эта библиотека запускает отладчик в терминале (например, ipdb для Python и Byebug для Ruby ). Очень проста в использовании и есть пример, как запустить php cli скрипты и веб-сервер.