私は 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" で定義されることを予期していました。ファイルは見つかりましたが、その中にクラスがありませんでした。クラス名または名前空間にタイプミスがある可能性があります。
誰かが私がここで見逃したことを教えてもらえますか?