如何以树枝格式执行此操作?

时间:2017-09-25 13:45:25

标签: php twig

这一个:

value="<?php echo isset($quantity_taxation_sort_order) ? $quantity_taxation_sort_order : '' ?>"

成为树枝格式。我试过这个,但它不正确:

value="{{ quantity_taxation_sort_order is defined ? quantity_taxation_sort_order : '' }}"

3 个答案:

答案 0 :(得分:0)

使用twig if statement声明打印:

value="{% if quantity_taxation_sort_order %}{{ quantity_taxation_sort_order }}{% endif %}"

或严格的枝条模式:

value="{% if quantity_taxation_sort_order is defined %}{{ quantity_taxation_sort_order }}{% endif %}"

有关Twig documentation的更多信息。

答案 1 :(得分:0)

我发现了这种方式:

value="{{ (quantity_taxation_sort_order is defined) ? quantity_taxation_sort_order : '' }}"

答案 2 :(得分:-5)

Twig是一个视图文件模板引擎。分开你的担忧!

商家逻辑在视图中不属于。回声和循环是视图文件应包含的唯一真实代码。所以正确的方法是:

  1. 在PHP中生成输出,然后将输出传递给树枝布局以进行回显。
  2. 创建一个twig扩展文件,并调用twig函数,它将执行业务逻辑。
  3. 以下是他们的文档中的Twig扩展示例:

    namespace AppBundle\Twig;
    
    class AppExtension 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;
        }
    }
    

    检查这里的文档! https://symfony.com/doc/current/templating/twig_extension.html