如何在PHP中打印出包含标签的原始字符串?

时间:2013-07-03 14:37:50

标签: php

例如:

$str="<script>alert('hello');</script>";

如果我使用echo将其打印出来,它将在浏览器中弹出一个警告窗口。

在这种情况下,如何打印原始字符串<script>alert('hello');</script>

3 个答案:

答案 0 :(得分:19)

取决于您是否需要单词script。如果是,则

你应该使用它。

echo htmlspecialchars($str);

请参阅http://php.net/manual/en/function.htmlspecialchars.php

如果不只是使用strip_tags http://php.net/manual/en/function.strip-tags.php

答案 1 :(得分:3)

您可以使用htmlspecialchars

$str = htmlspecialchars( "<script>alert('hello');</script>" )

docs:http://php.net/manual/en/function.htmlspecialchars.php

答案 2 :(得分:0)

如果您希望显示REAL RAW数据,请使用<xmp>标记:

$str="<xmp><script>alert('hello');</script></xmp>";

jsFiddle:http://jsfiddle.net/jvpYp/

<强>注意:

如果您使用

$userInput = "</xmp><script>evil javascript</script>";
echo "<xmp>" . $userInput . "</xmp>";
你可能会遇到麻烦。

更新: 自HTML 4.0以来,<xmp>标记已被删除,但仍在大多数浏览器中使用