清理字符串以使其内容仅用于纯文本

时间:2011-08-21 05:41:24

标签: php

我正在设计一个基本的电子商务应用程序,我有一个表单来添加产品。

有2个文本字段:产品名称和说明。

产品名称为input type="text",说明为textarea

由于用户可以输入任何内容(最坏情况),我想删除所有标签(无论是PHP,HTML,JS,CSS,还是其他任何内容),这样我就可以得到纯文本(没有任何标签)< / p>

我怎样才能做到这一点? 基本上,我需要清理字符串,所以任何使它成为纯文本

3 个答案:

答案 0 :(得分:1)

如果您只想从用户输入中删除所有标记,则可以使用strip_tags()功能。

更好的选择是通过HTML Purifier运行用户输入。这是一个更完整的清洁。

答案 1 :(得分:1)

我建议使用strip_tags函数,也许尝试这样的事情:

$cleaner_input = trim(strip_tags($input)); // trim is there for good measure

确保您还处理magic quotes,否则实际引用字符可能会成为问题并在它们之前获得反斜杠(它们被折旧但在大多数托管环境中仍然相关)。

请记住,strip_tags会在标记之间保留文本,因此对JavaScript / CSS来说会有些问题,但至少浏览器会将其呈现为纯文本。对正在输入数据的用户进行预览,他们会看到他们搞砸了。

希望有所帮助!

答案 2 :(得分:1)

有一种简单的方法。

对于php<5.2.0的版本,当我们必须验证或过滤用户数据时,我们通常使用正则表达式和/或复杂的PHP函数。
其中一些正则表达式难以理解/记忆。因此,通常大多数编码员都会在谷歌搜索以收集正确的正则表达式。

对于php>=5.2.0,您可以使用filter。 - &GT; Easy way to data filter and validation in php

这也可以帮到你:
How to sanitize your php