PHP会自动在$ _POST上执行urldecode()吗?
问题描述:
根据http://php.net/manual/en/function.urldecode.php,在$_GET
和$_REQUEST
(其中包含$_POST
)上,PHP确实为urldecode()
。
但是直接调用$_POST
已经解码?
答
是的,所有通过$_GET
和$_POST
访问的参数都被解码。
urldecode()
文档没有提及的原因$_POST
是因为POST数据可能首先不是URL编码。这取决于POST数据是以application/x-www-form-urlencode
格式还是multipart/form-data
格式提交。
但是,所有这些对应用程序都是透明的。
但是,$_GET
的文档确实提到了这一点。
注意:
的GET变量通过urldecode()
通过。
+0
从[$ _GET文档](http://php.net/manual/en/reserved.variables.get.php):“注意:GET变量通过urldecode()传递。” – doub1ejack
是的,它已经被urldecoded。 –
文档明确地为'$ _GET'表示,但只在'$ _POST'的user-contrib注释中。 http://php.net/manual/en/reserved.variables.get.php –
哪个评论迈克尔? –