如何管理具有双引号和单引号的动态加载的php字符串?

时间:2011-12-20 08:10:17

标签: php escaping

我将把文章标题加载到字符串中,这些标题的作者可能会也可能不会使用单引号和双引号。要在变量中使用此导入的文本,如何防止此代码破坏代码,因为我自己无法转义字符?

4 个答案:

答案 0 :(得分:4)

转义引号仅在您将其放入字符串文字(或数据库,当然)时才有意义。只需拥有字符串就不需要对它们进行转义。

答案 1 :(得分:1)

您可以安全地使用变量中的任何引号 - 在这方面没有限制。

但是,您应该考虑根据您要使用这些变量的上下文来转义字符。例如,如果您希望在终端上显示某些数据 - 不需要转义,而如果在网页中显示相同的数据,您将不得不处理这些数据。

要在网络环境中显示字符,您应该使用htmlentities()

要使用数据制作网址,您会发现urlencode()很有用。 http_build_query()也可能会有所帮助。

答案 2 :(得分:0)

你可以使用htmlentities()。

请参阅完整文档here

答案 3 :(得分:0)

您可以使用预定义的字符串函数addslashes()。有关详细信息,请参阅此链接http://php.net/addslashes