ZappeL

md5_twig extension

Oct 29th, 2013
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.11 KB | None | 0 0
  1. <?php
  2. namespace Yout\Namespyce;
  3.  
  4. class MD5Extension extends \Twig_Extension {
  5. public function getFilters( ) {
  6. return array(
  7. 'md5' => new \Twig_Filter_Method( $this, 'md5', array(
  8. 'needs_environment' => true,
  9. 'needs_context' => true,
  10. 'is_safe' => array(
  11. 'md5' => true
  12. )
  13. ))
  14. );
  15. }
  16.  
  17. public function md5( \Twig_Environment $environment, $context, $string ) {
  18. $loader = $environment->getLoader( );
  19. $parsed = $this->parseString( $environment, $context, $string );
  20. $environment->setLoader( $loader );
  21. return md5($parsed);
  22. }
  23.  
  24. protected function parseString( \Twig_Environment $environment, $context, $string ) {
  25. $environment->setLoader( new \Twig_Loader_String( ) );
  26. return $environment->render( $string, $context );
  27. }
  28.  
  29. public function getName( ) {
  30. return 'md5';
  31. }
  32. }
  33.  
  34.  
  35. service:
  36. twig.md5:
  37. class: Your\Bundle\Namespace\MD5Extension
  38. tags:
  39. - { name: twig.extension }
Advertisement
Add Comment
Please, Sign In to add comment