Как я могу просмотреть информацию о переменной или массиве в Symfony 1.4 - PullRequest
0 голосов
/ 24 июня 2011

Я пытаюсь изучить фреймворк Symfony, создав небольшой проект.

С тех пор, как я начал разработку проекта, мне стало интересно, есть ли удобная функция для просмотра содержимого или информации о переменной или массиве где-либо в приложении с помощью print_r или echo или var_dump (я могу использовать вышеупомянутую функцию где угодно в приложении, но вывод не читается должным образом в случае больших массивов, более того, есть предупреждения, такие как заголовок уже отправлен и т. д. и т. д.).

Я также использовал cakePHP, и у него есть вспомогательная функция с именем pr(), которая печатает содержимое переменной или массива с хорошим отступом (правильно читаемым).

Если бы мне нужно было создать такую ​​функцию, то как я могу убедиться, что она может быть вызвана в любом месте приложения?

Будем весьма благодарны за любые советы (ссылки / блоги / учебные пособия), относящиеся к "как отлаживать ваши приложения Symfony".

1 Ответ

1 голос
/ 27 июня 2011

Проще говоря: вы не можете выводить отладочные «вещи» в свой контроллер.Контроллер не имеет никакого отношения к представлению (выводу), поэтому при выполнении он не знает, будет ли какой-либо вывод.

Но вы можете вывести отладочные «вещи» в свой контроллер ;-)...

  • Просто print_r() или var_dump().И сразу die потом.Таким образом вы сможете увидеть свою отладку.

  • Позвоните в регистратор.$this->getLogger()->debug($message);

  • Добавьте пользовательский слот, который вы назначаете в своем контроллере ($this->getResponse()->setSlot('debug', $debugData)).И включите этот слот где-нибудь в файл макета (желательно только в среде dev.)

...