如果你能正确可靠地识别和过滤输入,你的工作就基本完成了.最后一步是使用一个命名约定或其它可以帮助你正确和可靠地区分已过滤和被污染数据的方 法.我推荐一个比较简单的命名约定,因为它可以同时用在面向过程和面向对象的编程中.我用的命名约定是把所有经过滤的数据放入一个叫$clean的数据 中.你需要用两个重要的步骤来防止被污染数据的注入: 经常初始化$clean为一个空数组. 加入检查及阻止来自外部数据源的变量命名为clean. 实际上,只有初始化是至关紧要的,但是养成这样一个习惯也是很好的:把所有命名…