【发布时间】:2010-09-07 08:24:32
【问题描述】:
$_REQUEST[$k] = isset($_GET[$k]) ? $_GET[$k] : $_POST[$k];
或
$_REQUEST[$k] = isset($_POST[$k]) ? $_POST[$k] : $_GET[$k];
这是什么情况,原因是什么?
【问题讨论】:
标签: php
$_REQUEST[$k] = isset($_GET[$k]) ? $_GET[$k] : $_POST[$k];
或
$_REQUEST[$k] = isset($_POST[$k]) ? $_POST[$k] : $_GET[$k];
这是什么情况,原因是什么?
【问题讨论】:
标签: php
$_REQUEST 是 $_GET、$_POST 和 $_COOKIE 的并集,其中 variables_order 并且从 PHP 5.3 开始,request_order 定义了顺序。
默认顺序是 GET、POST,然后是 cookie。这意味着 POST 参数会覆盖现有的 GET 参数,而 cookie 会覆盖现有的 POST 和 GET 参数。
【讨论】:
ini 指令“variables_order”被认为*会影响 $_REQUEST,请参阅 http://php.net/manual/en/ini.core.php
*“相信”,因为我从未使用过那个或 $_REQUEST 本身。
【讨论】:
$_REQUEST 只是 PHP 将所有 GET 和 POST 和 COOKIE 参数放入的数组,在发生冲突时按该顺序排列。
【讨论】: