PHP,如何删除字符串的HTML特殊字符


PHP, how to remove HTML special characters for a string?

我正试图在我的PHP代码中形成HTML,如下所示:

$output .= '<div>'.$text.'</div>;
echo $output;

然而,我发现$text可能有一些html字符,如><'"等……这会使最终的html损坏。

我想从$text中删除> < ' ",但可能还有更多字符需要删除?最好的方法是什么?

PHP函数htmlspecialchars是您的朋友。

我在下面的php.net中举了一个例子来展示它的工作原理:

<?php
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

N。B.在阅读php.net页面时,请花时间浏览您可能想使用的任何函数/类的注释,因为它们通常包含您可能遇到的问题的真实例子。

然而,我不完全确定你应该问这个问题,因为快速的谷歌会返回你想要的结果。如果你看到StackOverflow或PHP.net的结果似乎是主题,那么在发布以前可能问过的问题之前,它们非常值得浏览一下。