2016-07-14 2 views
0

У меня есть проект в PhpStorm, и я хотел бы иметь возможность отлаживать любой php-файл в любой папке. Единственный способ, которым я сумел отладить страницу PHP был установить его в явном виде в конфигурации отладки:Как правильно настроить конфигурации отладки в PhpStorm

enter image description here

Обратите внимание, что я набираю полный путь к файлу PHP в определенной папке. Теперь, если я хочу отлаживать другой файл, мне нужно создать еще одну конфигурацию для этого нового файла. Что делать, если я хочу отлаживать больше 2, 3 файлов? Нужно ли создавать новую конфигурацию для каждого отдельного файла?

Я также могу щелкнуть правой кнопкой мыши файл, а затем выбрать Debug. Он запускается в браузере, но таким образом он не останавливается на точке останова (та же точка останова, что и в вышеприведенном примере, так что оба расширения xdebug и chrome работают правильно).

Кажется, что если я правой кнопкой мыши файл, а затем выберите Debug это создает временную конфигурацию, но типа «JavaScript Debug», как можно увидеть на следующем рисунке:

enter image description here

Тогда это делает смысл не останавливается в точке останова, так как он ожидает кода Java. Есть ли способ изменить это? Я что-то упускаю?

+1

Меню правой кнопки мыши AFAIK предлагает только стандартные и самые простые варианты - отладка PHP Script и JavaScript. Если вы хотите отлаживать любую страницу, просто используйте подход «нуль-config», где вы инициируете сеанс отладки из фактического браузера (с помощью расширения браузера xdebug или букмарклета и т. Д.). https://confluence.jetbrains.com/display/PhpStorm/Zero-configuration+Web+Application+Debugging+with+Xdebug+and+PhpStorm – LazyOne

+1

RBasniak не очень приятно задавать вопрос и никогда не давать отзывов, когда люди пытаются Помогите. Помог ли мой ответ решить вашу проблему? если так выберите его (и повысьте, если хотите). В противном случае нам все равно хотелось бы знать, как вы решили свою проблему, чтобы мы могли учиться на ней. – BeetleJuice

ответ

1

Это то, что я делаю:

  1. Запустите отладчик и перейдите на вкладку браузера, который открыт. Обратите внимание: в браузере к URL-адресу добавляется параметр запроса; что-то вроде XDEBUG_SESSION_START=15412. С этого момента отладчик будет активирован любым HTTP-запросом, для которого этот параметр установлен на это значение в $_GET, в $_POST или $_COOKIE. Вы также можете увидеть правильное значение в среде IDE. На вкладке отладчика будет сообщение Waiting for incoming connection with ide key 15412

  2. Вот ключ: после того, как я установил свою точку останова в файле, который я хочу отлаживать, я просто перехожу к нему в браузере, но сначала добавляю тот же параметр запроса к URL-адрес. Легко!

+0

Какой именно ответ для меня, но ваш ответ привел меня к правильному решению: я узнал, что кнопка слушателя должна активироваться каждый раз, а не только при отладке от браузера ... – RBasniak

+0

@RBasniak Даже не знал, что есть кнопка слушателя. Я просто щелкаю небольшую зеленую ошибку, чтобы получить сообщение «Ожидание входящего соединения ...». Всякий раз, когда это происходит, отладка запускается, если у меня установлен параметр запроса. в любом случае, рад, что вы его работали. – BeetleJuice

Смежные вопросы