如何使用变量方法名称

时间:2015-02-18 14:34:40

标签: symfony variables twig

我的方法实体中有5个方法:

method1
method2
method3
method4
method5

我的目标是随机生成一个包含这5种方法的表。 为此,我有一个数字从1到5的数组,例如

array(1,3,5,4,2);

然后,当在twig文件中生成我的表时,我想打电话:

<td>methods.method<array[0]></td>
<td>methods.method<array[1]></td>
....

所以调用的实际方法是

<td>methods.method1></td>
<td>methods.method3></td>
....

有什么想法吗?谢谢。

2 个答案:

答案 0 :(得分:3)

我喜欢这个解决方案:使用attribute

 attribute(methods, 'method'~array[x])

答案 1 :(得分:2)

尝试实施新方法:

function callMethod(int $method_number){
    return $this->'method'.$method_number;

}

然后在树枝上:

... {{ object.callMethod(random_number)  }} ...