我正在为我的网站编写一个自定义树枝过滤器,除此之外它会解析一些URL的文本,如果它找到它们,它应该用一个指向自身的锚标记替换该标记。
代码:
foreach ($tokens as $key=>$value)
{
if (filter_var($value, FILTER_VALIDATE_URL))
{
// Replace $token with a version anchored to itself
$tokens[$key] = "<a href='$value' target='_blank'>".$value."</a>";
}
}
// Replace the spaces back in the string and return it
return implode(" ", $tokens);
解析和替换似乎工作正常,但在渲染时,Twig不会将替换的标记呈现为锚点,而是作为字符串呈现(意味着我将html呈现为页面上的文本)。
任何解决方案?
答案 0 :(得分:-1)
你可以使用树枝的原始过滤器来逃避你的功能输出:
{{ my_function(myVar)|raw }}