【问题标题】:Using html inside double quoted echos [duplicate]在双引号回声中使用html [重复]
【发布时间】:2019-08-10 09:44:59
【问题描述】:

我想改变一些文本的颜色,它必须在双引号内,因为它是一个变量。这是它发生的唯一实例,所以我不会打扰 CSS。

  echo "$playername ";  

我试过了

echo "<font color="yellow"> $playername </font>" ;

但它不起作用,我认为这是因为它不喜欢双引号内的双引号。任何帮助将不胜感激。

【问题讨论】:

  • echo "&lt;font color=\"yellow\"&gt; $playername &lt;/font&gt;" ;echo '&lt;font color="yellow"&gt; $playername &lt;/font&gt;' ;
  • 有很多方法可以解决这个问题。我知道这是一个骗局。只需要找到合适的。
  • 旁注,&lt;font&gt; 不再存在,所以不要使用它
  • 并非所有属性都需要引用。 (XHTML 不再是东西了)。 "&lt;font color=yellow&gt;…" 也可以。 (虽然&lt;font&gt; 已经过时了。)
  • 双引号内的双引号会破坏您的字符串,因此您必须对双引号使用反斜杠等转义字符 \" 还将字体和颜色更改为跨度和样式。$playername 是可变的,因此需要使用连接运算符(.) 将其添加到字符串。 echo "".$playername."";

标签: php html


【解决方案1】:

只有在处理可能包含空格或对 HTML 有意义的字符(例如“here。

如果坚持引用属性值,可以使用单引号或双引号,如下例所示:

<?php 
$playername = "Nobody";
$yellow="\"yellow\"";
echo "<font color=$yellow>$playername</font>";

注意:虽然 FONT 标签是 obsolete,但它在我的 Google Chrome (YMMV) 版本中仍然有效。请注意,MDN 坚决反对使用 FONT 标签:

不要使用这个元素!虽然曾经在 HTML 3.2 中标准化,但它是 在 HTML 4.01 中已弃用,同时所有与 仅样式,然后在 HTML5 中已过时。

【讨论】: