【问题标题】:Echo a Variable."_string" (concatenated with a string)回显变量。“_string”(与字符串连接)
【发布时间】:2010-11-03 06:21:50
【问题描述】:

嗨,Guy 知道如何完成这项工作吗?

<?php $themename_orig = get_bloginfo ( 'name' );
      $clean = toAscii($themename_orig);
      $shortname_opciones = $clean;
?>
body { 
background:url("<?php echo $shortname_opciones."_bg_img"; ?>") no-repeat scroll center top 

<?php echo $shortname_opciones."_color_bg"; ?>; 
}

#logo 
{ 
background: url("<?php echo $shortname_opciones."_logo"; ?>") 0 17px no-repeat; 
}

基本上我的问题是我需要在将变量与字符串连接后回显它,该变量确实存在。

【问题讨论】:

  • 从其他变量中获取变量名是非常糟糕的风格。我真的,真的建议您为此使用关联数组(或更好 - 虽然更复杂 - 一个对象)。它为您以后省去很多麻烦。

标签: php string variables concatenation


【解决方案1】:
echo ${$shortname_opciones."_bg_img"};

【讨论】:

  • 老实说,我不知道我是否应该 +1,因为这是正确的答案,但对于一个简单的问题仍然是一个糟糕的解决方案,如果他一开始就做了正确的事情就不会存在地点。
  • @dbmerlin 你认为应该怎么做?变量在后端创建 xxvar = shortname."_bg_img" 然后使用此解决方案在前端调用。如果您有更好的方法来创建许多以相同的短名称 + 后缀开头的变量,我相信有,但我不知道。
  • @Dario:使用对象或关联数组。
  • 谢谢 Ignacio 我会查一下,看看是否可以将它应用到项目中(我不是高级 PHP 编码器,但喜欢学习 :D)非常感谢您的回答和评论。
【解决方案2】:
background:url("<?php echo $shortname_opciones; ?>_bg_img")

【讨论】:

  • 这会打印 variablecontent_bg_img 但是 variablecontent_bg_img 是它自己的一个变量,这就是我需要得到的。
猜你喜欢
  • 1970-01-01
  • 2018-01-02
  • 2014-07-20
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
  • 2012-06-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多