You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Twig中拼接变量?新手求助转换PHP代码为Twig语法

解决Twig中动态变量访问的问题

嘿,我来帮你搞定这个Twig转换的问题!先拆解下你那段PHP代码的逻辑:它通过拼接字符串生成动态变量名(比如当$geo_zone['geo_zone_id']是123时,就会访问$jne_reguler_123_rate这个变量),然后输出对应的值。

Twig里没有PHP那种${}的动态变量语法,但我们可以用Twig内置的attribute()函数实现同样效果,这个函数专门用来动态访问数组或对象的属性/键。

具体的Twig代码如下:

{{ attribute(_context, 'jne_reguler_' ~ geo_zone.geo_zone_id ~ '_rate') }}

这里的细节说明:

  • _context是Twig的内置变量,代表当前模板中所有可用的变量集合,相当于PHP里的全局变量上下文。如果你的目标变量是在某个特定数组/对象里,把_context换成对应的变量即可。
  • ~是Twig的字符串连接运算符,和PHP里的.作用一致,用来拼接出完整的动态变量名。
  • attribute()函数会根据拼接后的键名,从_context中取出对应的值并输出。

如果你的geo_zone是数组类型(和PHP中$geo_zone['geo_zone_id']的结构对应),也可以写成:

{{ attribute(_context, 'jne_reguler_' ~ geo_zone['geo_zone_id'] ~ '_rate') }}

两种写法都能实现你要的效果,选和你的数据结构匹配的就行~

内容的提问来源于stack exchange,提问作者Nicolas Setiono

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:29:12