如何判断字符串是否已通过PHP中的htmlentities传递?它需要html_entity_decode吗?

我们通过htmlentities方法传递数据后将数据保存在我们的数据库中以避免任何注入攻击

在使用它的同时,我们html_entity_decode会恢复原始值。在我们的代码中的某些情况下,htmlentities由于我们的保存技术(难以解释),对相同的数据进行了 2-3 次。所以我们基本上希望避免多次编码相同的字符串。

是否有一种可靠的方法来检测字符串是否已通过htmlentities方法传递?

我想一种方法是检查"编码字符串中的内容,但还有更可靠的方法吗?任何内置方法只告诉我字符串是否已编码?

我们正在使用 Laravel,也许那里有一个帮助方法可以帮助我们?

回答

这从根本上是错误的 IMO 方法。存储原始数据。虽然它在数据库中,但它不会对您造成任何伤害。

htmlentities仅当您将其放入 HTML 文档时才通过它- 因为这是它可能危险的唯一上下文。

这将节省所有的编码和解码 - 您只需根据需要对其进行编码。


以上是如何判断字符串是否已通过PHP中的htmlentities传递?它需要html_entity_decode吗?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>