Dou*_*ell 8 php design-patterns sanitization user-input
你们都认为正确的(阅读:最灵活,松散耦合,最强大等等)的方式使用户从网络输入安全,以便在Web应用程序的各个部分中使用?很显然,我们可以只使用相应的消毒功能为每个上下文(数据库,在屏幕上显示,保存在磁盘上,等等),但有一些通用的"模式"来处理不安全的数据并使其安全吗?除非安全得当,否则是否有既定的方法来强制将其视为不安全?
您无法使用单一方法来清理所有用途的数据,但一个好的开始是:
Filter Var 接受多种不同类型的数据并剔除坏字符(例如您期望为数字的非数字字符),并确保其格式有效(IP 地址)。
注意:电子邮件地址比 Filter_Var 的实现复杂得多,因此请 Google 寻找正确的函数。
在您将要向数据库中输入内容之前,我不建议使用它,而且无论如何,最好只使用准备好的 mysqli 语句。