Подтвердить что ты не робот

Существует ли эквивалент `pry` для php?

Я немного испорчен на рубине и привык использовать удивительные pry средства для приложений. Я закрою приложение до 1 потока, а затем разрешу открывать pry в консоли httpd, а затем сможет разобраться во многих проблемах, однако я не нахожу ничего подобного в PHP. Есть ли подобное или принятое решение, которое работает так для PHP для отладки и отслеживания структур данных и т.д. Во время выполнения?

4b9b3361

Ответ 1

Я точно знаю, что вы имеете в виду. Я пропустил Pry после перехода на PHP. Пока PsySH выглядит как лучший REPL для PHP, который больше всего похож на Pry. Он имеет отражение, поэтому вы можете использовать команды типа ls для оценки переменных, констант, классов и т.д. У него есть команда помощи, аналогичная Pry show-doc, которая позволяет вам читать документацию о функциях или свойствах объекта. Вы даже можете просмотреть источник любого объекта, как и команду Pry show-source. Также отладка:

"PsySH можно использовать как интерактивный отладчик, как и оператор отладчика JavaScript, избавляя вас от бесконечных итераций var_dump() и die(). Просто оставьте эту строку там, где вы хотите иметь точку останова:

\ Psy\Shell:: отладки (get_defined_vars());"

Boris также является еще одним хорошим REPL для PHP, который похож на Pry.

Ответ 2

Да. Вызывается dephpugger

https://github.com/tacnoman/dephpugger

Вы также запускаете сервер в терминале и отладчике. Команды аналогичны, n для следующего, c для продолжения и т.д.

Ответ 3

Я не совсем в Ruby и pry, но насколько я читал в теме pry, это debugtool. Для отладки php я использую локальный веб-сервер под названием wamp со встроенным xDebug. В сочетании с IDE: Netbeans или Eclipse вы можете просматривать объекты данных/объекты во время выполнения вашего php script.

Ответ 5

Я не работал над Ruby.

Но отладка PHP может быть выполнена через

*)

Сервер WAMP с Firebug и FirePHP

Ответ 6

PHP работает по-разному от Ruby, его трудно сравнивать в контексте, о котором вы спрашиваете.

Проверка сложных структур во время выполнения выполняется на PHP с помощью отладки, что означает, что клиентская сторона отладки (= PHP IDE) должна иметь возможность связываться со стороной отладки сервера под управлением PHP (обычно это делается путем инициализации файла cookie со специальным именем, например через URL DBGSESSID = 123 & dbgParam1 = 123).

Таким образом, PHP на веб-сервере должен иметь специальный модуль отладки (например, XDebug), и когда клиент-отладчик говорит "останавливаться сейчас", тогда веб-сервер приостанавливает выполнение в определенной точке останова, подвергая любые локальные, глобальные, статические и т.д. структуры данных.

Если вам интересно, ознакомьтесь с доступными PHP-IDE с поддержкой отладки: Какая лучшая среда разработки для PHP?