当我使用此命令时:
{{ news.getnewsid() }}
我明白了:
11112223333
但我希望以这种格式查看它:
1111 2222 3333
在每个第4个号码后添加& nbsp。
这一行总共有12个数字。
我认为anserw很简单,但我现在不知道怎么做。
答案 0 :(得分:2)
您可以使用Twig的number_format过滤器:http://twig.sensiolabs.org/doc/filters/number_format.html 将空格定义为千位分隔符时,它应该有效 编辑:对不起,不是一个好主意,因为这会产生三个字符的块。
"切片" filter也可以用于此,但你必须分别输出每个数字块 与"分裂"相同输出数组的过滤器(也可以使用)。
您也可以在PHP中编写自己的过滤器,如果您在应用程序中更频繁地使用它,我认为这是最好的ida。 为Twig编写扩展:
答案 1 :(得分:1)
最简单的方法是......
{{ news.getnewsid()|split('', 4)|join(' ') }}
但是就像@Johni说的那样,它根本不可重复使用,因为你每次都要记住它。
除了在枝条扩展中执行此操作之外,您还可以在您的实体中执行此操作,例如..
public function getFormattedNewsId()
{
if (null === $this->newsid) {
return null;
}
return implode(' ', str_split($this->newsid, 4));
}
然后可以使用$news->getFormattedNewsId()
或使用{{ news.formattedNewsId }}
的Twig模板在您的应用中的任何位置调用。