我正在尝试根据查询中另一行的值来处理SQL查询的特定列。
我从SQL查询中得到的结果是这样的:
Number | Value1 | Value2 | Value3
1 | 3 | 5 | 4
3 | 5 | 2 | 6
2 | 1 | 3 | 2
对于每一行,我想通过数字索引来获取列的值。 例如,在第一行中,我想获取“ Value1”的值,即3。 在第二行中,我要获取“ Value3”的值,即6,依此类推。
然后,我使用TWIG for循环遍历列表,并可以像这样访问'Number'参数:
{% for key in examplelist|keys %}
{% set number = examplelist[key].number %}
{% endfor %}
不幸的是,我无法使用该数字处理“值”列。
我尝试过类似的事情:
{{examplelist[key].Value . number }}
或
{{examplelist[key].Value + number }}
或
{{examplelist[key].Value ~ number }}
但这些都不起作用...
答案 0 :(得分:1)
这应该可以解决问题
{% for key in examplelist|keys %}
{% set number = examplelist[key].number %}
{% set value = examplelist[key]["Value"~number] %}
{% endfor %}
答案 1 :(得分:0)
好的,我知道了。
数据以stdClass类型的对象而不是数组的形式返回。因此,您不能像访问数组一样访问它,而必须使用
对其进行转换$Examplelist = json_decode($Examplelist, true);
return $Examplelist;
在php部分。
之后,可以使用
解决{% set value = examplelist[key]["Value"~number] %}
仍然感谢您的帮助:)