细枝连接和功能


Twig concatenate and function

我已经为TWIG编写了一个特殊的函数来管理语言的URL。

$URLWithLang = new Twig_SimpleFilter('url', function($URL)
{
    if(substr($URL, -1) == '/'){
        $URL = "/".$_GET['lang']."/".$URL;
    }
    else{
        $URL = "/".$_GET['lang']."/".$URL."/";      
    }
    return $URL;
});

该功能可以完美地使用URL: {{'about-us'|url}} => en/about-us/

但是,当使用变量和文本时,如下所示:出于某种原因,它把语言置于两者之间。

{{'/bl'~ car.carURL|url}} =>/bl/en/252-fiat-panda/

我应该如何更改语句以使其输出。/en/提单/252 -菲亚特熊猫吗?

提前感谢!

由于运算符的优先级,这是预期的。试试以下命令:

{{ ('/bl'~ car.carURL)|url }}`