仙台のホームページ制作・システム開発・ウェブコンサルティングはアド・エータイプへ。

PHPの$_REQUESTで$_COOKIEの値が入っていない時にチェックすること

公開日:

PHP

PHPの$_REQUESTで$_COOKIEの値が入っていない時にチェックすること

 

PHPでの開発メモです。

 

$_REQUESTで値を取得している処理にて$_COOKIEの値が取得できないということがありました。

 

$_COOKIEに値をセットしているのになぜ?と思ったら、php.iniの設定が原因でした。
デフォルトの状態ではセキュリティを考えて$_REQUESTにクッキーが含まれていない設定になっているようです。

 

 

 

php.iniの設定を確認する

php.iniのrequest_orderの設定を確認します。

 

$_REQUESTでクッキーの値が取得できない場合は下記の設定になっていると思います。

 

request_order = “GP”

 

この設定で「C」を追加します。
「C」を追加することで$_COOKIEの値を取得することができます。
「G」と「P」は$_GETと$_POSTです。

 

request_order = “GPC”

 

変更後、Apacheを再起動させれば反映されます。

 

これで$_REQUESTから$_COOKIEの値を取得することができるようになりますが、
この設定をするよりもクッキーは$_COOKIEで値を取得するのがいいと考えます。

 

$_GETも$_POSTも一緒です。
$_REQUESTを使うより用途に合わせて個別に利用することをおすすめします。

 

 

 

まとめ

今回はPHPの$_REQUESTで$_COOKIEの値が入っていない時にチェックすることを記載しました。

 

自分もシステム開発を行う際は変数の取り扱いに注意して今後の開発に活かしていこうと思います。

 

PHP: コア php.ini ディレクティブに関する説明 – Manual

ブログ作成者3
  • このエントリーをはてなブックマークに追加

ホームページに関するお悩みは、仙台のホームページ制作アド・エータイプにお任せください!

お気軽にご相談ください。
022-716-3883
営業時間 平日9:30~18:00