在PHP模板中,我可以使用php函数,例如:
foreach ($users as $user){
echo someFunction($user->getName());
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能在TWIG中制作它?
{% for user in users %}
* {{ user.name }}
{% else %}
No user have been found.
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
我该如何实现这一目标?
Wes*_*orp 14
Ale*_*hyi 10
// $twig is a Twig_Environment instance.
$twig->registerUndefinedFunctionCallback(function($name) {
if (function_exists($name)) {
return new Twig_SimpleFunction($name, function() use($name) {
return call_user_func_array($name, func_get_args());
});
}
throw new \RuntimeException(sprintf('Function %s not found', $name));
});
Run Code Online (Sandbox Code Playgroud)
在树枝模板中:
{{ explode(",", "It's raining, cats and dogs.").0 | raw }}
Run Code Online (Sandbox Code Playgroud)
这将输出"正在下雨".默认情况下,返回的值在Twig中进行转义.
Twig_SimpleFunction是首选使用的类.Twig中所有其他与函数相关的类从1.12开始被弃用(将在2.0中删除).
在Symfony2控制器中:
$twig = $this->get('twig');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
34217 次 |
| 最近记录: |