내가 정의 나뭇 가지 함수를 작성하는 방법입니다
namespace Acme\DemoBundle\Twig;
class AcmeExtension extends \Twig_Extension
{
public function getFunctions() {
return array(
'currencySymbol' => new \Twig_Function_Method($this, 'currencySymbolFunction'),
);
}
public function currencySymbolFunction($locale) {
$locale = $locale == null ? \Locale::getDefault() : $locale;
$formatter = new \NumberFormatter($locale, \NumberFormatter::CURRENCY);
$symbol = $formatter->getSymbol(\NumberFormatter::CURRENCY_SYMBOL);
return $symbol;
}
public function getName() {
return 'acme_extension';
}
}
서비스 :
acme.twig.acme_extension:
class: Acme\DemoBundle\Twig\AcmeExtension
tags:
- { name: twig.extension }
내가 얻고 나뭇 가지 기능에 symfony2의 parameters.ini에서 현재 정의 된 로케일을 통과해야하기 때문에 , 전 나뭇 가지 값을 정의합니다 :
twig:
globals:
locale: %locale%
마지막으로 나뭇 가지 템플릿에서 :
{{ currencySymbol(locale) }}
나뭇 가지 확장은 괜찮습니까? – Prisoner
당신 말이 맞아요. 나는 나뭇 가지 확장 요리 책을 놓쳤다. 덕분에 – ihsan