【问题标题】:Execute echo inside of an echo在回声中执行回声
【发布时间】:2023-09-05 04:42:01
【问题描述】:

我有这个代码:

 echo '<div style="background-size: 100%; background-repeat: no-repeat; 
 background-image:url(http://render-api-eu.worldofwarcraft.com/static-
 render/eu/' . $newString.');">

 switch ($rasse) {
case "11":
    echo "Tauren";
    break;
case "12":
    echo "Troll!";
    break;
default:
    echo "No Character.";
}

问题是我在回声中有一个回声,因此“开关语句”不会被执行。我该如何处理?

【问题讨论】:

  • 你能解释一下你到底想在这里完成什么吗?
  • 在我看来更像是他有一个引用问题,它以双引号结尾并且没有双引号
  • $rasse = $race? @Forbs 也正确关闭了您的回显字符串 '&lt;div&gt;&lt;/div&gt;';
  • 可能只需要打开错误或查看日志。第一次回显时可能有语法错误/缺少右引号。
  • 只需在第一个回显';的末尾添加一个单引号和一个分号

标签: php switch-statement echo


【解决方案1】:

您忘记在echo '&lt;div style="background-size: 100%;... 之后写';,这会导致问题(也是代码未按预期运行的原因):

echo '<div style="background-size: 100%; background-repeat: no-repeat;  
                  background-image:url(http://render-api-eu.worldofwarcraft.com/static-render/eu/' . $newString.');">';
switch ($rasse) {
    case "11":
        echo "Tauren";
    break;
    case "12":
        echo "Troll!";
    break;
    default:
        echo "No Character.";
}

【讨论】:

  • 谢谢,但我也得到了一个白页。
  • @Mr.Curser - 你是什么意思?
  • 代码未按预期工作。我现在只是得到一个白页。
  • @Mr.Curser 您是否看到任何错误消息?我尝试运行这段代码(并定义了$newString = 'text'; $rasse = "12";,因为我不知道原始变量)并且它有效,所以请给我一个信息 - 出了什么问题?