小枝拡張機能の実装に問題があります。独自のフィルター (substr フィルター) を作成する必要があります。そこで、小枝拡張機能を使用することを考えました。
MyApp\Bundle\WebsiteBundle\ に「Extension」という名前のフォルダーとファイルを作成しました: WebsiteExtension.php
namespace Bundle\WebsiteBundle\Extension;
class WebsiteExtension extends \Twig_Extension {
public function getFilters() {
return array(
'substr' => new \Twig_Filter_Method($this, 'substrFilter'),
);
}
public function substrFilter($sentence, $start, $end) {
return substr($sentence, $start, $end);
}
public function getName()
{
return 'website_extension';
}
}
次に、 /app/config の config.yml で
services:
Website.twig.extension:
class: MyApp\Bundle\WebsiteBundle\Extension\WebsiteExtension
tags:
- { name: twig.extension }
しかし、エラーが発生します:
"Fatal error: Class 'MyApp\Bundle\WebsiteBundle\Extension\WebsiteExtension' not found in .../appDevDebugProjectContainer.php on line 1391"
ファイルとクラスが存在するのはおかしいです...何か見逃していますが、何ですか?