@daniligorevich

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

Я относительно недавно работаю с PHP, до этого работал с Python, вся работа в основном с вебом. На Python привык в любой момент вывести в консоль данные, чтобы увидеть нюансы (например запрос на вебхук), какой шаблон данных, какой тип и тд. В итоге чтобы понять как данные преобразовать я тратил 5 минут (пару раз перезапустить и проверить точность). Сейчас на PHP, мне показали и раскали только об одном варианте, вебхук на сервер, данные в лог и постоянно бегать на сервер обновлять лог и обратно, соответственно затраты времени на просто обработать запрос уходит море. Я Нашел способ через ngrok, php-cgi server (или любой девелоперсий веб сервер) и функцию file_put_contents('php://stderr', '*****'), через ngrok открываю доступ к интернету, веб сервер исполняет файлы, а функция выводит в поток вывода данные.
Вот встал вопрос есть ли способ проще и менее костыльный? Вроде видел как в самом браузере можно код посмотреть, но я работаю с вебхуками и api поэтому браузером почти не пользуюсь. В идеале это вывод в консоль как в IDE через echo, var_dump и тд. Работаю с PhpStorm.
  • Вопрос задан
  • 181 просмотр
Пригласить эксперта
Ответы на вопрос 3
FanatPHP
@FanatPHP
Чебуратор тега РНР
если честно, то я совсем не понимаю этих проблем

и постоянно бегать на сервер обновлять лог и обратно,

я не понимаю, что это значит
в моем мире есть ssh консоль на сервер, в котором запущена команда tail -f error.log
которая в реальном времени отображает все обновления в логе
то есть "бегать" и "обновлять" ничего не нужно, а всего лишь разместить окно терминала на соседнем мониторе и видеть всю отладочную информацию в реальном времени
это если говорить об отладке через лог ошибок и "консоль веб-сервера" (что бы это не значило)

вывод var_dump(), конечно, без небольшой доводки так просто в лог не направишь, но вместо неё вполне можно использовать json_encode. ну или уж написать обертку над var_dump которая через ob_start сохраняет вывод в строку, которую потом можно через error_log() отправлять в лог ошибок РНР

я работаю с вебхуками и api поэтому браузером почти не пользуюсь.

Опять же, я не понимаю, как можно работать с вебхуками и API без Postman
И если мы работаем через Постман - то какая проблема собственно в том же окне и видеть ответ сервера?
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
XDebug - позволяет отлаживать PHP-скрипт, работающий на сервере, в IDE на компьютере разработчика.
Ответ написан
Комментировать
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
как уже сказали xdebug + https://kint-php.github.io/kint/
для веба phpdebugbar.com или https://firephp.org
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы