我熟悉Kohana。我一直在阅读Input library,它会自动为我预过滤GET和POST数据,以及Validation libary,这有助于表单过滤和验证。
我应该一起使用吗?验证库文档中给出的示例使用未过滤的$_POST
数组而不是$this->input->post()
。在我看来,将两者联系起来会更安全,但这两套文档似乎没有相互提及,所以我不知道这是否多余。
答案 0 :(得分:2)
如果启用了全局XSS过滤(默认情况下处于启用状态),则会对$_POST
,$_GET
和$_COOKIE
全局变量进行预先清理。这就是为什么你的代码扩展了Kohana类的原因之一,所以像你一样处理输入清理这样的内务管理。但是,他们鼓励使用输入库方法,因此没有理由不使用它们。他们可能只在验证示例中使用$_POST
,因为他们想要彼此独立地解释不同的库。
他们用于实例化验证类的代码应:
$post = new Validation( $this->input->post() );
是的,一定要一起使用它们!这一切都意味着很好地融合在一起。
答案 1 :(得分:0)
是的,一起使用它们。
答案 2 :(得分:0)
如果您查看输入库,您会看到如果它已启用(这是默认设置,可以通过将$config['global_xss_filtering']
更改为FALSE
来禁用,config/config.php
),然后它会修改$_POST
,$_GET
,$_SERVER
和$_COOKIE
变量,因此无论您是通过$this->input->get()
还是$_GET
访问它们,值将被过滤。