树枝找不到扩展名...我应该使用什么命名空间?



我正在将 BASE64 编码字符串传递给一个树枝模板,我想对它进行树枝扩展解码。

我用作曲家安装了twig,我没有使用任何其他框架,我发现的大多数扩展示例似乎都假设你是,我认为这给我带来了麻烦。我似乎无法让树枝找到我的扩展。

所以我想我遇到了命名空间问题。 我的设置:

root/
-index.php
-vendor/
-twig/

鉴于此设置,我应该将扩展文件放在哪里,文件顶部应该有哪个命名空间?加载它的正确方法是什么?

提前非常感谢!

如果您的应用程序不太复杂,您只需在注册和加载 Twig 本身的位置添加扩展即可。

// index.php
require_once __DIR__ . '/vendor/autoload.php';
$loader = new Twig_Loader_Filesystem('/path/to/templates');
$twig = new Twig_Environment($loader, array(
'cache' => '/path/to/compilation_cache',
));
// an anonymous function:
$base64Decode = new Twig_Filter('base64_decode', function ($string) {
return base64_decode($string);
});
// or a simple PHP function:
$base64Decode = new Twig_Filter('base64_decode', 'base64_decode');
// add the function to your Twig environment:
$twig->addFilter($base64Decode);

最新更新