$_COOKIE
ドル アンダーバー クッキー(変数と定数)
意味 クッキー情報の取得
$_COOKIEとは?
$_COOKIEは、HTTPクッキーの値を取得するためのスーパーグローバル変数です。Webサイトがユーザーのブラウザに保存した小さなデータ(クッキー)にアクセスできます。ユーザーの設定や状態を記憶するのに便利ですが、セキュリティに注意が必要です。
$_COOKIEの具体的な使い方
クッキーの設定と取得
<?php
// クッキーの設定
$themeName = 'dark';
$expiryTime = time() + (86400 * 30); // 30日間有効
setcookie('theme', $themeName, $expiryTime, '/', '', true, true);
// クッキーの取得と利用
if (isset($_COOKIE['theme'])) {
$userTheme = $_COOKIE['theme'];
echo "現在のテーマ設定: {$userTheme}\n";
// テーマに基づいてスタイルを適用する例
if ($userTheme === 'dark') {
echo "<style>\n";
echo "body { background-color: #333; color: #fff; }\n";
echo "</style>\n";
} else {
echo "<style>\n";
echo "body { background-color: #fff; color: #333; }\n";
echo "</style>\n";
}
} else {
echo "テーマが設定されていません。デフォルトのテーマを使用します。\n";
}
// クッキーの削除
// setcookie('theme', '', time() - 3600, '/'); // コメントを解除するとクッキーが削除されます
// フォームの表示
echo "<form method='post'>\n";
echo " <select name='new_theme'>\n";
echo " <option value='light'>ライトテーマ</option>\n";
echo " <option value='dark'>ダークテーマ</option>\n";
echo " </select>\n";
echo " <input type='submit' value='テーマを変更'>\n";
echo "</form>\n";
// フォーム送信時の処理
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['new_theme'])) {
$newTheme = $_POST['new_theme'];
setcookie('theme', $newTheme, time() + (86400 * 30), '/', '', true, true);
echo "テーマが {$newTheme} に変更されました。ページを再読み込みしてください。\n";
}
?>
👇出力結果
現在のテーマ設定: dark
<style>
body { background-color: #333; color: #fff; }
</style>
<form method='post'>
<select name='new_theme'>
<option value='light'>ライトテーマ</option>
<option value='dark'>ダークテーマ</option>
</select>
<input type='submit' value='テーマを変更'>
</form>
この例では、$_COOKIEを使用してユーザーのテーマ設定を管理しています。まず、'theme'という名前のクッキーを設定し、ユーザーのテーマ選択を保存します。その後、$_COOKIEからテーマ設定を読み取り、それに基づいてページのスタイルを動的に変更します。また、ユーザーがテーマを変更できるフォームも提供しており、新しい選択がPOSTされた場合にクッキーを更新します。このように、$_COOKIEを使用することで、ページをリロードしても持続するユーザー設定を簡単に実装できます。
$_COOKIEに関するよくある質問
$_COOKIEが学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、PHPの$_COOKIEや__FILE__、$_SERVER、__TRAIT__、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
PHPを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!PHPはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!