如何在php中回显斜杠?

时间:2013-05-08 18:55:41

标签: php html echo slash

每次我检查这段代码的HTML输出时,都不包括斜杠。因此,背景图像失败。我甚至把它通过一个HTML到PHP转换器。我迷路了;请帮忙。

while($row = mysql_fetch_array($data))
{
    //Echo Theme Template on pages  
    echo "<div style='background-image:url('../uploads/avi/{$row['avi']}')></div>";
    echo "<div class='myname'>{$me}</div>"; 
}

3 个答案:

答案 0 :(得分:4)

最简单的答案是,你的样式属性有一个未闭合的' ..

echo "<div style='background-image:url('../uploads/avi/{$row['avi']}')'></div>";
这里^

但这不会有效..所以你应该调整这样的引号:

echo "<div style='background-image:url(\"../uploads/avi/{$row['avi']}\");'></div>";

你可以看到破碎的回声http://codepad.viper-7.com/CGMdUx

,已编辑的版本在http://codepad.viper-7.com/bEyKFz

我通过键盘上的htmlspecialchars传递了它,因此您可以将其视为字符串并避免呈现为HTML仅供查看之用。

答案 1 :(得分:0)

由于'属性使用内部style,您需要在内部使用双引号。

echo '<div style="background-image:url(\'../uploads/avi/' . $row['avi'] . "')></div>";

<强>结果

<div style="background-image:url('../uploads/avi/abc.efg')></div>

答案 2 :(得分:0)

这里你做错了两件事。您从未关闭样式标记的最终引号,并且使用style =''和url('')的单引号相互取消。

我建议始终对HTML标记使用双引号。

while($row = mysql_fetch_array($data))
//Echo Theme Template on pages
{
    echo "<div style=\"background-image:url('../uploads/avi/{$row['avi']}');\"></div>";
    echo "<div class='myname'>{$me}</div>";
}

要考虑的另一件事是,总是用Firebug或其他工具说“查看源代码”而不是“检查”。您没有看到打印出的URL的原因是新浏览器是“智能”并尝试修复DOM错误。使用Firebug或类似工具检查源代码将显示浏览器实际解释的内容。查看源代码将显示实际发送到浏览器的内容。