2014-07-10 1 views
0

Je PHP 5.5.9 et j'activé php_intl.dll exyention et définir sa configuration dans les php.ini actifs comme suit:Comment installer le filtre twig localizeddate?

[intl] 
intl.default_locale = ar 
; This directive allows you to produce PHP errors when some error 
; happens within intl functions. The value is the level of the error produced. 
; Default is 0, which does not produce any errors. 
;intl.error_level = E_WARNING 

Lorsque je tente le code brindille suivant:

{{ item.get_date('j F Y | g:i a')|localizeddate('medium', 'none', locale) }} 

I a obtenu une erreur fatale:

Fatal error: Uncaught exception 'Twig_Error_Syntax' with message 'The filter "localizeddate" does not exist in "index.html" at line 53' in

La documentation officielle there ne montre pas comment installer ou ajouter ce filtre brindille. J'utilise une application PHP simple sans Symfony. La version twig 1.16.0

Répondre

1

Vous recherchez le package composer twig/extensions, le repo github est au fabpot/Twig-extensions.

Vous mentionnez que vous utilisez twig standalone, alors vous devez avoir un objet Twig_Environment. Il a une méthode addExtension, vous devez l'appeler, en passant une nouvelle instance de l'extension Intl:

$env->addExtension(new Twig_Extensions_Extension_Intl());