gpt4 book ai didi

symfony2.3过滤器 Twig 在其他过滤器内

转载 作者:行者123 更新时间:2023-12-02 16:46:13 24 4
gpt4 key购买 nike

我在 Twig 上有过滤器:

class AcmeExtension extends \Twig_Extension
{
public function getFilters()
{
return array(
new \Twig_SimpleFilter('price', array($this, 'priceFilter')),
);
}

public function priceFilter($number, $decimals = 0, $decPoint = '.', $thousandsSep = ',')
{
$price = number_format($number, $decimals, $decPoint, $thousandsSep);
$price = '$'.$price;

return $price;
}
}

但是如何在其他过滤器中调用价格过滤器呢?在 symfony 2.0 中声明过滤器 'price' => new\Twig_Filter_Method($this, 'priceFilter')

并且可以从另一个过滤器中调用它。

感谢并抱歉我的英语

最佳答案

如果您希望其他过滤器的返回值进入您的价格过滤器,您可以将它们链接在 twig 中:

{{ value|acme_filter|price }}

或者在另一个方向,如果您需要其他过滤器中价格过滤器的返回值:

{{ value|price|acme_filter }}

如果您确实需要在其他过滤器中使用价格过滤器,没问题。该扩展是一个普通的 php 类。

public function acmeFilter($whatever)
{
// do something with $whatever

$priceExtentsion = new PriceExtenstion();
$whatever = $priceExtension->priceFilter($whatever);

// do something with $whatever

return $whatever;
}

关于symfony2.3过滤器 Twig 在其他过滤器内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18517244/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com