我真的很讨厌全局变量 – 也许它的C#程序员在我身上,但是当我在
PHP工作时,每次我都要做这样的事情,我会磨牙:
$strUsername = $_GET['username'];
是的,我大大地简化了它,是的,我正确地对所有这些进行了清理.实际上,对于我构建的框架,所有的超级框架几乎都是在执行开始时被抓取的,并且从那里依赖注入.
我在PHP手册中碰到了这个功能(你真的每天都会学到新的东西):filter_input_array().
所以现在,从技术上讲,我可以做到这一点,而不是从GET超全局抓取一切:
$GETdata = filter_input_array(INPUT_GET);
….等等与其他人,如POST,REQUEST等.我的问题是:我应该使用filter_input_array,所以避免超级瘟疫的祸害,还是有一些理由坚持他们,忘记使用filter_input函数?其他人的经验是什么?
编辑:我忘了一件事 – filter_input函数对任何脚本级别的修改都是无效的,所以如果我这样做:$_GET [‘cheese’] =’puff’;尝试做filter_input(INPUT_GET,’cheese’);稍后将返回null.这是很好的,因为我依赖注入一切,但如果他们没有意识到,它可能会赶上某人防守.