Как использовать дамп в TWIG?

Я просто добавляю для шаблона (index.html.twig):

{{ dump(product) }} 

и у меня ошибка:

 The function "dump" does not exist in AcmeStoreBundle:Default:index.html.twig at line 2 

Почему эта функция не включена, и как я могу включить это?

Вам нужно настроить расширение для отладки:

 # app/config/config.yml services: acme_hello.twig.extension.debug: class: Twig_Extension_Debug tags: - { name: 'twig.extension' } 

По ссылке, упомянутой выше, отладка Twig работает по умолчанию в Symfony 2.5+ с запуском Twig 1.16+, а определение пользовательских сервисов не требуется. См. Этот ответ для получения более подробной информации .

Когда вы настраиваете его, как сказал @meze, вы можете отображать все пользовательские переменные:

 <h1>Variables passed to the view:</h1> {% for key, value in _context %} {% if key starts with '_' %} {% else %} <pre style="background: #eee">{{ key }}</pre> {{ dump(value) }} {% endif %} {% endfor %} 

Вы можете использовать мой простой плагин для удобного ознакомления с вашими переменными:

Twig Dump Bar

Symfony 2.7+ ОБНОВЛЕНИЕ:

DebugBundle обеспечивает большую интеграцию компонента в структуру полного пакета Symfony. Он включен по умолчанию в dev и тестовой среде Symfony Standard Edition.

Проверьте компонент VarDumper и его интеграцию на Twig .

СТАРЫЙ ОТВЕТ:

Я хотел бы предложить не-родное решение. Вам понадобится сторонний пакет, но окончательный результат будет замечательным!

Улучшения версии dump :

  1. все свалки в стиле
  2. вы можете обеспечить максимальный уровень вложенности, чтобы избежать проблем с памятью с большими объектами
  3. очень полезные помощники, такие как ldd() , который является псевдонимом для классического «дампа и смерти»,
  4. у него есть консольный демпфер (например, php app/console ladybug:dump "Symfony\Component\HttpFoundation\Request" )
  5. он обеспечивает интеграцию с Symfony Profiler
  6. он автоматически определяет классы Symfony, Doctrine, Twig и Silex и связывает их с официальной документацией

Здесь ссылки:

  • knpbundles
  • GitHub