微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 AMPScript 中使用字符串作为变量名

如何解决在 AMPScript 中使用字符串作为变量名

我在 Marketing Cloud 中使用 Salesforce 的 AMPScript 遇到以下问题:

我有两个变量,我想组合一个字符串和其中一个变量来获取一个变量的值。

我有变量 @country_code,例如 @translate_DE。如果 @country_code 现在具有值 DE,我如何从中创建变量 @translate_DE?我已经尝试过像这样使用 CONCAT:

SET @translation_var = CONCAT('translation_',@country_code)

但这只是生成字符串 translation_DE,现在我需要这个字符串作为变量。

这是一些用于测试的代码,使其更加清晰:

<script runat="server" language="ampscript">
  var @country_codes,@country_code_list
  set @country_codes = 'AD,AE,AF,AG,AI,AL,AM,AN,AO,AQ,AR,AS,AT,AU,AW,AZ,BA,BB,BD,BE,BF,BG,BH,BI,BJ,BM,BN,BO,BR,BS,BT,BV,BW,BY,BZ,CA,CC,CD,CF,CG,CH,CI,CK,CL,CM,CN,CO,CR,CU,CV,CX,CY,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,EH,ER,ES,ET,FI,FJ,FK,FM,FO,FR,GA,GD,GE,GF,GH,GI,GL,GM,GN,GP,GQ,GR,GS,GT,GU,GW,GY,HK,HM,HN,HR,HT,HU,ID,IE,IL,IN,IO,IQ,IR,IS,IT,JM,JO,JP,KE,KG,KH,KI,KM,KN,KP,KR,KW,KY,KZ,LA,LB,LC,LI,LK,LR,LS,LT,LU,LV,LY,MA,MC,MD,MG,MH,MK,ML,MM,MN,MO,MP,MQ,MR,MS,MT,MU,MV,MW,MX,MY,MZ,NA,NC,NE,NF,NG,NI,NL,NO,NP,NR,NU,NZ,OM,PA,PE,PF,PG,PH,PK,PL,PM,PN,PR,PS,PT,PW,PY,QA,RE,RO,RU,RW,SA,SB,SC,SD,SE,SG,SH,SI,SJ,SK,SL,SM,SN,SO,SR,ST,SV,SY,SZ,TC,TD,TF,TG,TH,TJ,TK,TM,TN,TO,TP,TR,TT,TV,TW,TZ,UA,UG,UK,US,UY,UZ,VA,VC,VE,VG,VI,VN,VU,WF,WS,YE,YT,YU,ZA,ZM,ZW'
  set @country_code_list = buildrowsetFromString(@country_codes,',')

  set @translate_DE = 'Germany'
  set @translate_CH = 'Switzerland'
</script>

<!doctype html>
<html>
<head>
 <Meta charset="utf-8">
 <title></title>
 <Meta name="description" content="">
 <Meta name="viewport" content="width=device-width,initial-scale=1">
</head>
<body>
%%[ 
FOR @i = 1 TO Rowcount(@country_code_list) DO
  SET @row = Row(@country_code_list,@i)
  SET @country_code = Field(@row,1,0)
  SET @translation_var = CONCAT('translation_',@country_code)
]%%
%%=v(@country_code)=%%<br>
%%=v(@translation_var)=%% /* I want to output the value of @translation_DE and others here */<br><br>
%%[ NEXT @i ]%%
</body>
</html>```

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。