xdebug не остановится на точке останова - PullRequest
23 голосов
/ 26 октября 2010

Я трачу несколько часов, чтобы настроить свою IDE для отладки PHP с помощью eclipse и xdebug. Все в порядке, кроме точки останова, которую я установил в eclipse.Если дважды щелкнуть строку, чтобы добавить точку останова, отладчик захочет остановить , а не . Если добавить строку xdebug_break (), отладчик хорошо остановится на строке ...

Возможно, это проблема с конфигурацией.Кто-нибудь может мне помочь?

  • Eclipse: Eclipse PDT 2.2.0 All In Ones Windows 32 бита
  • Xdebug: 5.3 VC6 (32 бита)
  • PHP: PHPВерсия 5.3.3

PHP.ini

[xdebug]
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.remote_mode=req
xdebug.profiler_enable = 1
xdebug.profiler_output_dir = "c:/temp"
xdebug.collect_params = 4
xdebug.collect_return = on
xdebug.collect_vars = on

xdebug.show_local_vars = 1

Ответы [ 19 ]

0 голосов
/ 11 ноября 2018

Для меня проблема, похоже, в php 7.2 с Xdebug v2.7.0beta2-dev, обратите внимание на часть beta .Это было установлено с помощью puphpet.com.Я попробовал php 7.1, и проблема исчезла.Мне понадобилось несколько часов, чтобы найти это!

0 голосов
/ 31 мая 2018

У меня была такая же проблема при использовании eclipse-php-кислорода Вопрос лежит в затмении. Я установил eclipse-php-luna-SR2-win32 и протестировал xdebug, и он отлично работает.

Установлен: XAMPP-win32-7.0.30-0-VC14-installer.exe Обновление Java 8 171

Ниже приведены мои настройки на php.ini:

[XDebug]
zend_extension = C:\xampp\php\ext\php_xdebug-2.6.0-7.0-vc14.dll
;zend_extension = C:\xampp\php\ext\php_xdebug-2.5.5-7.0-vc14.dll
;zend_extension = "c:\xampp\php\ext\php_xdebug-2.6.0-7.2-vc15.dll"
xdebug.remote_autostart = 1
xdebug.profiler_append = 0
xdebug.profiler_enable = 0
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "c:\xampp\tmp"
;xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_log = "c:\xampp\tmp\xdebug.txt"
xdebug.remote_port = 9000
xdebug.trace_output_dir = "c:\xampp\tmp"
;36000 = 10h
xdebug.remote_cookie_expire_time = 36000

Надеюсь, это поможет.

Br, Али

0 голосов
/ 20 февраля 2018

Я на окнах, затмение кислородом.Потратив немало времени, я обнаружил, что простое удаление и воссоздание Debug Configuration помогло.

0 голосов
/ 24 января 2018

Я тоже это исправил.Использование zend_extension вместо расширения.

zend_extension_ts="C:\xampp\php\ext\php_xdebug.dll"
0 голосов
/ 16 декабря 2015

Я добавляю ту же проблему в Fedora, выпуск 20 Heisenbug, php-ZendFramework2-Debug-2.3.9-1.fc20.noarch, php-pecl-xdebug-2.2.7-1.fc20.i686 и версия Eclipse: Mars.1 Release (4.5.1). Я использовал предыдущие ответы, обнаружил, что eclipse использует ipv6, я изменил, как описано в eclipse.ini для -Djava.net.preferIPv4Stack=true. То же самое для xdebug.ini и до сих пор не работает, пока я не обнаружил, что у меня есть 2 файла xdebug.ini, один в /etc/php-zts.d/, который является неправильным, и один в /etc/php.d/, который используется apache. Я изменил его, чтобы включить следующую настройку

; Enable xdebug extension module
zend_extension=xdebug.so

xdebug.remote_enable=on
xdebug.remote_host="127.0.0.1"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.remote_mode=req
xdebug.remote_autostart=1
xdebug.idekey=

перезапустил сеть sudo service network restart, и теперь точки останова обнаружены, и я могу отлаживать, как и ожидалось.

0 голосов
/ 12 июля 2015

Просто упомяну простое решение для меня, когда мой недавно установленный и настроенный xdebug не работал с PhpStorm: я просто забыл перезапустить apache после обновления файла php.ini.

0 голосов
/ 18 апреля 2013

1 - проверьте конфигурацию xdebug на php.ini2- eclipse-> project-> properties-> phpDebug-> Включить специфическую для проекта настройку

phpDebugger-> configurattion-> port или widndow-> preference-> php-> debug-> selectedDebuggers

3-widndow-> preference-> php ->

Интерпретатор-> исполняемые файлы-> путь к php-win.exe точка: для каждой отладочной библиотеки (xdebug, zend_debugger, ...) вы можете иметь исполняемый файл php по умолчанию.

4 - ваш сервер приложений работает на другом порту с 80.widndow-> preference-> php-> PHP серверы

0 голосов
/ 07 марта 2013

У меня была та же проблема, и одна или две вещи решили ее ...

Я удалил дублирующее определение zend_extension в моем PHP.ini

или более вероятно, я только что обновился до последней версии xdebug отсюда: http://xdebug.org/download.php

(я запускал xdebug, поставляемый с XAMPP v1.7.1)

ЭТО НАЧИНАЛОСЬ СНОВА ... пробовал все разные версии dll xdebug и т. Д. ... оказалось, что причиной того, что это не работало, было открытое окно Expressions ... так что держите его закрытым, когда вы отлаживаете вещи Вы можете временно добавить часы, а затем закрыть окно «Выражения», прежде чем «шагнуть» ...

фальшивка ...

0 голосов
/ 17 января 2013

Если вы используете Eclipse, возможно, отладчик , настроенный для конкретного запуска (см. Вкладку Отладчик), является отладчиком Zend, а НЕ XDebug.Исправьте ваш отладочный запуск и попробуйте снова.Это решило проблему для меня.

К сожалению, я не могу опубликовать скриншот.Однако в Eclipse вы можете перейти к: Конфигурации отладки> Веб-приложение PHP>, затем выберите ваш запуск> Вкладка отладчика>, используйте раскрывающийся список Отладчик сервера, чтобы выбрать XDebug>, нажмите кнопку Применить и повторите попытку.

...