我想知道过滤用户提交的输入的最佳位置在哪里。关于过滤器,我说的是filter_var和filter_input。
我提出了三种情况:
这些方法中的每一种都有其优点和缺点。我正在寻找一些可能是最佳或标准实践的见解。
方法1将已清理的数据传递给函数,因此函数可以更小而不必清理所有进入的内容。如果调用任何其他位置并且数据未被清理,则可能会导致问题。这只需要良好的编码实践,以便在传递给函数之前记住清理所有内容。
方法2你永远不必担心你的函数处理未经过处理的数据,但函数会更大。
方法3是最安全的,但是浪费。编写了更多的代码,并且在通过可能的各种功能时可能会多次清理数据,浪费CPU资源和时间。
答案 0 :(得分:3)
我认为您的每个方法都是有效的,只要您make wrong code look wrong。
答案 1 :(得分:0)
正如你所说,最好的方法是在使用之前通过get或post过滤从输入发送的数据
答案 2 :(得分:0)
我认为最好的选择是使用函数过滤它们,以便您可以重复使用代码。 为此创建一个类并且快乐;)
答案 3 :(得分:0)
从上述场景,1& 2 适用于良好实践。虽然数字3不需要过滤输入数据两次,因为它说它浪费资源。
因此,方案1或2;这取决于你正在处理什么情况。