用 Twig 中的另一个替换 4 位字符串中的第三个字符

Replace third character from a 4-digit string with another in Twig

我的目标是从 4 位数字字符串中屏蔽一位数字。而不是 2451,我想要 24*1.

我尝试了 {{ my_var|replace(slice(2, 1): '*') }} 但这引发了以下错误:The function "slice" does not exist in My:Bundle:file.html.twig.

最奇怪的是 {{ my_var|slice(2, 1) }} 完美运行。所以函数 does 存在。

我怎样才能达到我想达到的目标?

非常感谢。

创建您自己的 Twig 扩展 - 过滤器: SymfonyCookbook 恕我直言,这将是最干净的方法。

slice 是一个过滤器而不是一个函数,您可以尝试通过管道传输它们,但在您的情况下,如果不创建您的自定义 twig 函数或过滤器到 [=12=,我看不到可以实现的东西] 您的需求: