Serializer.php 697 B

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace JMS\SerializerBundle\Twig;
  3. use JMS\SerializerBundle\Serializer\SerializerInterface;
  4. /**
  5. * Serializer helper twig extension
  6. *
  7. * Basically provides access to JMSSerializer from Twig
  8. */
  9. class Serializer extends \Twig_Extension {
  10. protected $serializer;
  11. public function getName() {
  12. return 'Serializer';
  13. }
  14. public function __construct(SerializerInterface $serializer)
  15. {
  16. $this->serializer = $serializer;
  17. }
  18. public function getFilters() {
  19. return array(
  20. 'serialize' => new \Twig_Filter_Method($this, 'serialize'),
  21. );
  22. }
  23. public function serialize($object, $type = 'json') {
  24. return $this->serializer->serialize($object, $type);
  25. }
  26. }