Symfony2 Twig扩展RuntimeException

时间:2013-10-03 11:03:44

标签: php symfony

我在symfony2上建立一个应用程序并需要一个新的twig过滤器:

我在我的包中创建了一个文件夹Twig,并在那里创建了这个文件AppExtension.php:

namespace App\MyBundle\Twig;

use Twig_Extension;
use Twig_Filter_Method;

class AppExtension extends \Twig_Extension
{
    public function getFilters()
    {
        return array(
            'left' => new \Twig_Filter_Method($this, 'leftFilter'),
        );
    }

    public function leftFilter($string, $start = 0, $length = 1)
    {
        $left = substr($string, $start, $length);
        return $left;
    }

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

然后我在services.yml中声明了它:

app.twig.app_extension:
    class: App\MyBundle\Twig\AppExtension
    tags:
        - { name: twig.extension }

但是我得到了这个RuntimeException:

  

自动加载器预期类“App \ MyBundle \ Twig \ AppExtension”将在文件“... / src / \ App \ MyBundle \ Twig \ AppExtension.php”中定义。找到了该文件,但该类不在其中,类名或命名空间可能有拼写错误。

有人可以告诉我在这里错过了什么吗?

1 个答案:

答案 0 :(得分:1)

使用<php?代替<?

这将解决问题。