Как отлаживать PHP с помощью NetBeans и Xdebug - PullRequest
15 голосов
/ 28 марта 2009

Я недавно пытался начать работу с Netbeans 6,5 после того, как он получил столь высокую оценку в обзоре IDE журнала Smashing. http://www.smashingmagazine.com/2009/02/11/the-big-php-ides-test-why-use-oneand-which-to-choose/

Моя основная причина перехода с Notepad ++ состоит в том, что я хотел бы иметь возможность отлаживать свой код и настраивать его через него.

Я следовал инструкциям по установке xdebug как с поставщика http://xdebug.org/, так и с веб-сайта netbeans. http://www.netbeans.org/kb/docs/php/debugging.html#gettingReady но безрезультатно.

Как это делается, у кого-нибудь еще есть отладка, работающая в netbeans?

(Моя настройка: Windows XP, Wamp-сервер 2.0, PHP 5, Netbeans 6.5.1)

Ответы [ 16 ]

10 голосов
/ 22 декабря 2009

Важно добавить эту строку в php.ini:

xdebug.idekey="netbeans-xdebug"

Примечание. В NetBeans перейдите в «Настройки» и посмотрите, где настроен компонент xdebug. Ищите этот идентификатор сессии. В моем случае это был netbeans-xdebug.

6 голосов
/ 30 марта 2009

хм, для меня netbeans был первой идеей, что отладка php работала из коробки.

Показывает ли xdebug в phpinfo? если это так, он должен работать с настройками по умолчанию. Единственное, что нужно, это:

xdebug.remote_enable=on

Так что, если это не включено, поместите его в файл php.ini, перезапустите apache, и отладка должна работать.

Если нет, вам нужно будет предоставить мне больше информации, чтобы помочь вам.

с

5 голосов
/ 31 марта 2009

С тех пор я обнаружил, что WAMP при установке с Mod_rewrite и cURL не может справиться с Xdebug.

Это известная ошибка и происходит сбой каждый раз.

http://phphints.wordpress.com/2008/10/24/wampserver-phpini-settings-for-use-with-xdebugdll-pear-and-silverstripe-cms-framework/

К сожалению, я тоже использую эти 2 библиотеки.

3 голосов
/ 14 мая 2009

Это не известная проблема, что xdebug вызывает проблемы с curl или mod_rewrite. Единственные известные мне проблемы - это Xdebug в Vista.

2 голосов
/ 30 ноября 2010

Вы можете увидеть здесь: http://ruilima.com/2010/11/ambiente_de_desenvolvimento_php_netbeans_xdebug/ на португальском, но есть предварительно настроенная виртуальная машина с Ubuntu 10.10, netbeans, php, mysql, xdebug, готовая к использованию. посмотрите

1 голос
/ 26 ноября 2012

Если вы используете xampp под Windows:

Вам нужно всего лишь открыть файл php.ini и изменить эти две строки

;xdebug.profiler_enable = 0
;zend_extension = "C:\xampp\php\ext\php_xdebug.dll"

в

xdebug.profiler_enable = 1
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"

(Внимание: если ваша версия xampp старая, вы должны загрузить ее с http://xdebug.org/download.php, загрузить 32-разрядную версию, даже если ваша ОС является 64-разрядной. -5.4-vc9.dll . Сначала скопируйте php_xdebug-2.2.1-5.4-vc9.dll в каталог C: \ xampp \ php \ ext \, затем вторая строка будет zend_extension = "C:\xampp\php\ext\php_xdebug-2.2.1-5.4-vc9.dll)

После этого остановите apache и начните снова, вот и все.

1 голос
/ 06 августа 2010

Я обнаружил, что в Netbeans вам нужно установить путь webroot в проектах для app / webroot. Если вы делаете это, отладка работает без нареканий.

0 голосов
/ 09 октября 2013

Просмотрите приведенный ниже документ для удаленной отладки с использованием NetBeans. http://stuporglue.org/setting-up-xdebug-with-netbeans-on-windows-with-a-remote-apache-server/

0 голосов
/ 20 сентября 2013

Теперь он работает после тратить 3 часа на то, чтобы заставить xdebug работать на Windows8 с wamp 2.2 замена исходных строк ниже [xdebug] на следующие

    zend_extension = "c:/wamp/bin/php/php5.3.13/zend_ext/php_xdebug-2.2.0-5.3-vc9.dll"
    ;make sure path of your own php_xdebug, dll version may vary.

    [xdebug]

    xdebug.remote_enable = on
    xdebug.remote_handler=dbgp
    xdebug.remote_host=localhost
    xdebug.remote_port=9000
;recheck your port number in netbeans [Tools=>options=>php=>debugging there it is: debugging port]
    xdebug.profiler_enable = on
    xdebug.profiler_enable_trigger = on
    xdebug.profiler_output_name = cachegrind.out.%t.%p
    xdebug.profiler_output_dir = "c:/wamp/tmp"

Теперь нажмите значок wamp на панели задач и «перезапустите все сервисы»

Хорошо .. Теперь последний шаг >> НАЧАТЬ NETBEANS КАК АДМИНИСТРАТОР Холли душа Windows8, я тебя ненавижу: <</p>

0 голосов
/ 25 октября 2012

Когда я запускал netbeans под Ubuntu, я тоже столкнулся с этой проблемой, похоже, что я перепробовал все решения, найденные в интернете, но все тщетно.

Единственное, что в итоге помогло - это запуск сетевых компонентов с помощью команды SUDO! Похоже, у обычного пользователя не было разрешения прослушивать порт 9000 (или любой другой).

sudo netbeans &

... и вуаля, я снова могу отладить! Может быть, это сэкономит вам день или два

...