SESSION_GET_COOKIE_PARAMS()は、PHPの組み込みセッションハンドラーの1つです。現在のセッションCookieのすべてのパラメーターを返し、配列として提示されます。返品値には、次のキー価値ペアが含まれています。
生涯:クッキーのライフサイクル(秒単位)
パス:Cookie有効なパス
ドメイン:Cookieが存在するドメイン名
セキュア:HTTPSのみを転送するかどうか
httponly :HTTPプロトコルからのみアクセスできますか
この関数は通常、 session_set_cookie_params()と組み合わせて使用されます。これは、セッションCookieパラメーターを設定または取得する必要がある場合に非常に便利です。
使用の基本的な例は次のとおりです。
<code>&lt;?php //セッションを開始する前にデフォルトのCookieを取得します$ params = session_get_cookie_params();エコー "lifetime:"。 $ params ["lifetime"]。 "<br>";
エコー「パス:」。 $ params ["path"]。 "<br>";
エコー「ドメイン:」。 $ params ["domain"]。 "<br>";
エコー「セキュア:」。 ($ params ["secure"]? "true": "false")。 "<br>";
echo "httponly:"。 ($ params ["httponly"]? "true": "false")。 "<br>";
?>
</code>
実行結果には、現在のPHPセッションCookieのすべてのパラメーターが表示されます。
最初にSESSION_SET_COOKIE_PARAMS()を使用してパラメーターの設定をカスタマイズし、次に設定がSESSION_GET_COOKIE_PARAMS()を使用して成功するかどうかを確認できます。
<code>&lt;?php //カスタムクッキーパラメーターsession_set_cookie_params(['lifetime' =&gt; 3600、 'path' =&gt; '/'、 'domain' =&gt; 'gitbox.net'、 'secure' =&gt; true、 'httponly' =&gt; true]); //セッションを開始します
session_start();
//パラメーターを取得して表示します
$ params = session_get_cookie_params();
print_r($ params);
?>
</code>
上記のコードでは、セッションCookie設定をカスタマイズして、Cookieをhttpsを介してのみ送信でき、JavaScriptでアクセスできないことを確認し、 gitbox.netドメイン名で有効になるように制限されています。次に、 session_get_cookie_params()出力を使用して、構成が正しいことを確認します。
設定の問題のデバッグ<br> 開発プロセス中に、さまざまな環境でのトラブルシューティング(開発、テスト、生産)など、サーバーのセッション設定が正しいかどうかを確認する必要がある場合があります。
セキュリティ監査<br> セッションCookieが安全であり、Httponlyがマークされていることを確認することが、中間の攻撃とXSS攻撃を防ぐための基本的な要件です。
クロスドメインアプリケーションの最適化<br> ウェブサイトが複数のサブドメイン( app.gitbox.netやapi.gitbox.netなど)を使用すると、Cookieのドメイン値を設定することにより、サブドメイン間で共有セッションを実装できます。
session_get_cookie_params()は、 session_start()を呼び出す前または後に使用する必要がありますが、特定のクライアントのCookieの現在の状態ではなく「セット」値を返します。
PHPの古いバージョンと互換性がある必要がある場合は、パラメーターを設定するときに配列形式の使用を避け、古いスタイルのパラメーターの合格方法を使用することをお勧めします。