einfach eine gute Zweig der Praxis Lösung zu veranschaulichen, können Sie eine benutzerdefinierte Dienstprogramme Zweig Erweiterung erstellen und Multibyte String (mb) für Strings mit Akzenten beginnen, sollten Sie richtig funktioniert:
use Twig_SimpleFilter;
class UtilitiesExtension extends \Twig_Extension
{
public function getFilters()
{
return array(
new Twig_SimpleFilter('ucfirst',
array($this, 'ucFirst'), array('needs_environment' => true)
),
);
}
public function ucFirst(Twig_Environment $env, $string)
{
if (null !== $charset = $env->getCharset()) {
$prefix = mb_strtoupper(mb_substr($string, 0, 1, $charset), $charset);
$suffix = mb_substr($string, 1, mb_strlen($string, $charset));
return sprintf('%s%s', $prefix, $suffix);
}
return ucfirst(strtolower($string));
}
}
Dann können Sie solche Filter aus einer Zweigdatei auf dem Weg aufrufen. Akzente auch arbeiten:
{{ 'étudiant de PHP' | ucfirst }}
Ergebnisse in: "Étudiant de PHP"
Richtig, ich erstellte eine eigene Erweiterung wie es hier gezeigt: http://symfony.com/doc/current/cookbook/templating/twig_extension.html – Zwen2012
Definitiv ein Weg zu gehen, obwohl ich einige Probleme mit 'Ucfirst' vorher hatte (hat nicht funktioniert, gab schließlich auf) –