我需要在Silex框架中爲Twig添加自定義過濾器。例如,我想這個功能適用於一些變量:Silex Twig的自定義過濾器
public function addExclamation($text) {
return $text.'!!!';
}
而且在樹枝模板做這樣的事情:
{{ text|exclam }}
閱讀http://twig.sensiolabs.org/doc/advanced.html後,我創建「Project_Twig_Extension.php」:
class Project_Twig_Extension extends Twig_Extension
{
public function getName()
{
return 'project';
}
public function getFilters()
{
return array(
new Twig_SimpleFilter('exclam', 'addExclamation'),
);
}
public function addExclamation($text) {
return $text.'!!!';
}
}
但我不能低調,我需要把這個文件,我怎麼能註冊這個過濾器在Silex的「index.php」。
你能給我一步一步的指導嗎?在Twig addFilter using Silex?中描述的方法不起作用。
你是什麼意思的「不工作」?你有錯誤信息嗎? – Maerlyn
我創建'InsolisExtension.php'並把它放在'W:\ home \ example.com \ Insolis \ Twig'中,之後我在'index.php'註冊代碼中寫入。錯誤:致命錯誤:在第39行的W:\ home \ example.com \ index.php中找不到'Insolis \ Twig \ InsolisExtension'類。文件夾'vendor'與'index.php'處於同一級別。 – inetbug
您忘記在自動加載器中註冊Insolis名稱空間。 – Maerlyn