ホームページ >バックエンド開発 >PHPチュートリアル >$_COOKIE が `setcookie()` をすぐに反映しないのはなぜですか? すぐにアクセスするにはどうすればよいですか?
setcookie() 呼び出し後の Cookie 値へのアクセス
setcookie() を呼び出した直後に $_COOKIE を使用して Cookie の値にアクセスしようとした場合関数を実行すると、$_COOKIE['uname'] が設定されていないように見える場合があります。これは、Cookie が設定されてもすぐには使用できないために発生します。
この理由は、応答がクライアントに送り返されるまで Cookie が設定されないためです。 PHP は、クライアントによって次のリクエストが行われるまで Cookie にアクセスできません。
すぐに Cookie にアクセスする
この問題を回避するには、手動で設定します。 setcookie() を呼び出した後の $_COOKIE の Cookie 値。これにより、同じスクリプト内で Cookie の値にすぐにアクセスできるようになります。
setcookie('uname', $uname, time() + 60 * 30); $_COOKIE['uname'] = $uname;
ブラウザと $_COOKIE のマニュアルの両方で Cookie を設定すると、setcookie() を使用して設定した後、すぐにその値にアクセスできます。 .
以上が$_COOKIE が `setcookie()` をすぐに反映しないのはなぜですか? すぐにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。