创建一个简单的树枝过滤器

时间:2014-03-06 17:32:15

标签: symfony

我在创建时收到此错误消息,因为我创建了一个简单的树枝过滤器。该消息根本不清楚。

  

在编译模板期间抛出了异常   (“警告:app / cache / dev / classes.php行中的非法偏移类型   3342" )

我的过滤器:

class simpleFilter extends Twig_Extension
{

    public function getFilters()
    {
        return array('simpleFilter' => new Twig_SimpleFilter($this, 'simpleFilter'));

    }

    public function simpleFilter($value)
    {
        return 'test'.$value;
    }

    public function getName()
    {
        return 'some_extension';
    }
}

我的配置

my.twig.extension.simpleFilter:
    class: Bundle\Twig\Filter\SimpleFilter
    tags:
        - { name: twig.extension }

我错过了什么吗?

2 个答案:

答案 0 :(得分:3)

尝试将getFilters更改为如下所示:

public function getFilters()
{
   return array(
      new Twig_SimpleFilter('simpleFilter', array($this, 'simpleFilter'))
   );
}

答案 1 :(得分:-2)

我不得不使用Twig_Filter_Method

public function getFilters()
{
   return array(
      new Twig_Filter_Method('simpleFilter', array($this, 'simpleFilter'))
   );
}

即使我不知道他们之间的区别。