动态获取 Twig Lang 值

Getitng a Twig Lang value dynamically

我有一个关于如何从 Twig 动态提取深层嵌套翻译值的问题。

设置如下:

我有 yml 格式的翻译文件 (en.yml),这是一个例子:

parent:   
   child:
    something: here is some test
    another: more text here

然后我将一个数组传递给 Twig:

array(2) {
    [0]=>
    array(2) {
    ["name"]=>
    string(2) "GS"
    ["folders"]=>
    array(1) {
        [0]=>
        array(1) {
        ["name"]=>
        string(3) "something"
        }
    }
    [1]=>
    array(2) {
    ["name"]=>
    string(1) "I"
    ["folders"]=>
    array(2) {
        [0]=>
        array(3) {
        ["name"]=>
        string(2) "another"
        }
    }

在 twig 中,我想将文件夹名称打印到屏幕上,例如

here is some test

如果 lang 文件的所有内容都在其根目录中,那将很容易,我可以使用:

{{ array.folders.name|trans }}

然而,由于这是 lang 文件中的嵌套值,我不知何故需要说:

{{'parent.child'.array.folders.name|trans }}

非常感谢任何帮助。

只需先连接字符串,然后将值传递给翻译过滤器,如下所示:

{{ ('parent.child.' ~ array.folders.name)|trans }}

希望对您有所帮助