Метод отладки PHP-скриптов

pioneer

Guest
Метод отладки PHP-скриптов

Боюсь показаться банальным, однако в FAQ и вообще в Google/Yandex, равно как и в этом форуме крайне скудная информация по нужному мне поводу.

В общем, мой вопрос состоит в следующем.
Приведите пожалуйста любой способ отладки PHP-скриптов с применением какой-либо среды разработки (чтобы была пошаговая трассировка, переменные etc.). Что обычно используют опытные программисты?

Собственно, написать в форум вынудило наличие трудностей в освоении различных IDE с целью их применения для отладки скриптов.

Zend 5.2.0.
Зенд работает только со своим PHP-интерпретатором, на любой другой он ругается (если я подсовываю свой екзешник вместо того, что лежит в папке с Zend). Однако этот интерпретатор поставляется без расширений (php_mysql.dll, php_xsl.dll и т.д.). Если я прописываю в php.ini путь к расширениям от PHP той же версии, я получаю сообщение о том, что такого файла (например, php_mysql.dll) нет, хотя он по этому пути действительно есть. Я не смог это побороть - перемещал файлы с расширениями в разные места, соответственно меняя пути в php.ini - безрезультатно.
Пробовал работать как с Денвером, так и с Zend Platform.

NuSphere PHPEd + PHP-DBG
Получаю сообщение "Не могу соединиться с сервером".
Пробовал на Денвере.
В php.ini все прописано согласно инструкции, phpinfo() правильно выдает наличие расширения DBG. Послал запрос на саппорт, пока ответа нет.

PHPEclipse + PHP-DBG
То же самое, в общем-то.
Пробовал на Денвере и на XAMPP.
"Не могу соединиться с сервером". Плюс еще долгое ожидание открытия странички во встроенном браузере в отладочном режиме.

Apache 1.33 в Денвере, Apache 2 в Zend Platform и XAMPP.
PHP 5.1.2 в Денвере, 5.1.4 в Zend и XAMPP.

Буду благодарен за любую помощь и совет.
 

kruglov

Новичок
Опытные программисты обычно не нуждаются в том, чтобы на каждом шаге наглядно видеть, чему равна какая переменная и куда разветвляется каждый if.

Им достаточно в сомнительном месте отладочного echo
 

tony2001

TeaM PHPClub
у всех упомянутых IDE есть саппорт, который и нужно спрашивать.
 

WP

^_^
Полностью согласен, я например, как писал в родном Блокноте до появления всех этих наворотов, так и буду писать, и ничего не нужно от редактора кроме элементарно подсветки, и иногда нумерации строк, Notepad2 хватает вполне. Забыл когда видел ошибку, хотя E_ALL. А все эти редакторы которые сами названия функций даже заканчивают (о времена, о нравы), лишь портят труд человека. Хотя в качестве игрушки для начинающих - годится.
kruglov
var_dump все-таки лучше)
 

Vadim S.

Новичок
pioneer, поищите на форуме Denwer по "zend" и "отладка и zend".

Zend 5.1.0 с Денвером работает прекрасно. (думаю что в 5.2.0 врядли что-то глобально изменилось в этом плане)
 

HEm

Сетевой бобер
Все это хорошо, когда код ваш, а если нужно попатчить свежепоставленный форум с объемом кода в несколько мегабайт? Или там портал...
 

WP

^_^
Товарищи, юзайте свой моск и будет все ок)

-~{}~ 12.07.06 19:02:

Ибо всё это имеет свои баги, да и неудобно.
 

master_x

Pitavale XXI wieku
WP
[off]
люди используют Zend IDE для того, чтобы сэкономить себе время, xdebug чтобы найти самое тормознутое место, в конце концов все перечисленные в треде IDE хорошо работают с CVS и SVN, что в реальных бизнес-условиях просто необходимо, а еще ведь генерация документации по коду... но ты же с нотепадом и еще и другим советуешь.
[/off]
pioneer
Если я прописываю в php.ini путь к расширениям от PHP той же версии, я получаю сообщение о том, что такого файла (например, php_mysql.dll) нет, хотя он по этому пути действительно есть
а вот тут причина не в зенде. ты просто пойдb и еще раз, внимательно посмотри в документации как это расширение ставится ([m]mysql[/m] смотри камменты).
 

bgm

 
Блокнот VS Блокнот...
Гении, может быть, и могут с высокой производительностью творить в блокноте, но на минимальной сложности проекте я бы не доверял среднему программисту с блокнотом :)
 

denver

?>Скриптер
на минимальной сложности проекте я бы не доверял среднему программисту с блокнотом
Куда уж там умнику до максимально сложного проекта, так?
Блокнот это зло навязанное Майкрософтом чтобы понизить производительность опытных программеров, а IDE - добро которое прибавляет уверенности и мозгов новичкам :D

ЗЫ. Не стоит быть категоричным, производтельность на 90% от сообразиловки зависит, на 10% от IDE.
 

phprus

Moderator
Команда форума
svetasmirnova
Нет, но судя по моему опыту в навороченной IDE код можно писать быстрее, чем в блокноте. Так как в них, например, есть подсветка синтаксиса, которая позволяет избежать примитивных ошибок, например не закрытая кавычка и т. д.
 

Alexandre

PHPПенсионер
у всех вышеперечисленных IDE есть один маленький недостаток, они, как правило, отстают от тех версий, которые используются на хостинге, а посему эти IDE идеально использовать локально. Для маленьких проектов их использовать можно, для больших решений, дедовские методы:echo +логгирование + обмен по сокетам.

С сокетами опять заморочка - либо слушать через юниксовую консоль, либо на собственную, но тогда необходимо решать вопросы с фиреволом....


см http://phpclub.ru/talk/showthread.php?s=&threadid=37355&highlight=dbg

-~{}~ 13.07.06 10:39:

судя по моему опыту в навороченной IDE код можно писать быстрее, чем в блокноте. Так как в них, например, есть подсветка синтаксиса, которая позволяет избежать примитивных ошибок
Подсветка синтаксиса есть в любом простом редакторе, тот же Far, но это ни как не вяжется с темой "Метод отладки PHP-скриптов "
 

bgm

 
svetasmirnova
Нет, не добавляют. Но избавляют от необходимости распылять внимание на рутинные, однообразные действия. Т.е., конечно, середняка к гению они не приблизят, но проблему потери времени и, тем самым, повышения производительности, в какой-то мере решат.
Кстати - в Eclipse нет ничего навороченного, а вот удобства работы с проектом + удобства работы с CVS - хоть отбавляй.

-~{}~ 13.07.06 13:10:

denver
Никакой категоричности: есть задачи и есть инструменты. Не использовать мощные и удобные инструменты для решения этих задач - всё равно что современному хирургу использовать египетские бронзовые скальпели или пытаться сделать дырку в железобетонной стене с помощью молотка.
 

denver

?>Скриптер
bgm
Доверять минимально серьезную операцию нужно не тому хирургу у кого инструмент лучше, а тому кто и без скальпеля сможет успешно обойтись если придется :)
 

bgm

 
denver
Без скальпеля? Зубами-ногятми? Слышал я байки про филиппинских хилеров :)
 
Сверху