Rameau: afficher le nom du mois en fonction de la localisation en cours
Je suis juste essayer d'afficher le nom du mois, en fonction des paramètres régionaux en cours.
{{ event.date|date('F') }}
mais les mois sont toujours affichés en anglais...
J'ai essayé ce code ci-dessous j'ai trouvé ici, mais le résultat est le même...
class Helper_Twig extends Twig_Extension
{
public function getFilters()
{
return array(
'datetime' => new Twig_Filter_Method($this, 'datetime')
);
}
public function datetime($d, $format = "%B %e")
{
if ($d instanceof \DateTime) {
$d = $d->getTimestamp();
}
return strftime($format, $d);
}
public function getName()
{
return 'Helper';
}
}
REMARQUE: Dans le contrôleur, je vérifie les paramètres régionaux en cours à l'aide de $request->getLocale
et il correspond au paramètre locale je suis passer en paramètres.yml.
Quel est le problème?
OriginalL'auteur ziiweb | 2012-07-30
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser SonataIntlBundle pour gérer localisée de la date de la représentation.
Intl
de la bibliothèque doit être installé.Il ne fournit pas une méthode pour afficher uniquement la traduction du mois.
OriginalL'auteur
Depuis que vous avez défini
datetime
TwigFilter, vous n'avez pas à appeler{{ event.date|date('F') }}
Au lieu de cela, vous devez appeler cette
{{ event.date|datetime('%B') }}
OriginalL'auteur
Vous probablement n'avez pas installé le PHP
intl
-bibliothèque dans votre PHP. http://php.net/manual/de/book.intl.phpOriginalL'auteur