【php】$_REQUESTに$_COOKIEが入っていない
問題
$_REQUEST って「$_GET、 $_POST そして $_COOKIE の内容をまとめた連想配列です。」ですよね?
私の環境では $_COOKIEが入っていないんですけど。
答え
デフォルトの状態では$_REQUESTは$_GET+$_POST+$_COOKIE。
しかし、request_order、variables_order という設定による。
このディレクティブは、PHP が GET 変数や POST 変数そしてクッキー変数を _REQUEST 配列に登録する際の順序を表します。 登録は左から右の順に行い、後から登録した値が古い値を上書きします。
このディレクティブが設定されていない場合は、variables_order を使用して $_REQUEST を設定します。
デフォルトの配布状態の php.ini ファイルには、クッキーの ‘C’ が含まれていないことに注意しましょう。 セキュリティを考慮したためです。
phpのソースに同梱されているphp.iniを使っている環境では、以下のような設定で、$_REQUEST = $_GET + $_POST でした。
# php -i | grep _order request_order => GP => GP variables_order => GPCS => GPCS ......
コメント