但绝对没有错,采取从两个输入
$_GET,并
$_POST在组合方式。实际上,这就是您几乎总是想做的:
对于通常通过GET提交的纯幂等请求,您想要的数据量可能无法容纳在URL中,因此实际上已将其更改为POST请求。
对于真正生效的请求,您必须检查它是否由POST方法提交。但是,这样做的方法是
$_SERVER['REQUEST_METHOD']
显式检查,而不是依靠$_POST
为GET清空。而且无论如何,如果方法是POST
,您仍可能要从URL中取出一些查询参数。
不,问题与
$_REQUEST合并GET和POST参数无关。默认情况下,它也包含
$_cookie。cookie实际上根本不像表单提交参数:您几乎永远都不想将它们视为同一事物。
如果您不小心在网站上设置了一个与表单参数之一同名的cookie,那么由于cookie值覆盖了预期参数,依赖该参数的表单将神秘地停止正常工作。如果您在同一站点上有多个应用程序,则这非常容易做,并且当您只有几个用户使用旧cookie时,您将很难再进行调试,而当您不再使用旧cookie来破坏表格时,这种调试非常困难-
另一个可以复制。
您可以使用PHP5.3中的request_order配置将此行为更改为更明智的
GP(否
C)顺序。在无法做到这一点的地方,我个人会避免使用,如果需要组合的GET +POST数组,请手动创建。
$_REQUEST
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)