ホームページ > バックエンド開発 > PHPチュートリアル > setcookie 関数を使用して PHP で Cookie を設定する方法

setcookie 関数を使用して PHP で Cookie を設定する方法

王林
リリース: 2023-06-26 12:02:02
オリジナル
1928 人が閲覧しました

Web 開発では、Cookie は Web アプリケーションがクライアント側でデータを保存し、アクセスできるようにする非常に一般的なテクノロジです。 PHP プログラミングでは、Cookie の設定は通常、setcookie 関数を使用して実装されます。

setcookie 関数の構文は次のとおりです:

bool setcookie ( string $name [, string $value [, int $expire [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]]]] )
ログイン後にコピー

このうち、name パラメータは必須で、その他のパラメータはオプションです。パラメータの意味は次のとおりです。

    name: 設定する Cookie の名前。
  • value: 設定する Cookie の値。
  • expire: UNIX タイムスタンプ形式の有効期限。指定しない場合、Cookie はブラウザー セッションの終了時に期限切れになります。
  • path: Cookie にアクセスできるディレクトリ。
  • domain: Cookie にアクセスできるドメイン名。デフォルトでは、Cookie は現在のドメイン名でのみ設定できます。
  • secure: TRUE に設定すると、SSL 接続を使用する場合、Cookie は送信時に HTTPS 経由でのみアクセスされます。
  • httponly: TRUE に設定すると、Cookie には JavaScript ではなく、HTTP プロトコル経由でのみアクセスできます。
次は、「username」という名前の Cookie を設定する方法を示す簡単な例です:

setcookie("username", "tom");
ログイン後にコピー

ブラウザが初めてページにアクセスすると、Cookie は自動構成されます。 。複数の Cookie を設定する必要がある場合は、複数の setcookie 関数呼び出しを使用するだけであることに注意してください。

次は、「username」という名前の Cookie を設定し、1 日後に期限切れになる方法を示す、少し複雑な例です。

$expire = time() + 3600 * 24; // 1天后过期
setcookie("username", "tom", $expire);
ログイン後にコピー

上の例では、time 関数を使用して取得します。現在のタイムスタンプを 3600*24 (1 日の秒数) に加算して、有効期限を取得します。実際のアプリケーションでは、PHP の日付処理関数 (strtotime など) を使用して有効期限を計算することもできます。

Cookie の値と有効期限の設定に加えて、パスとドメインのパラメーターを設定することで、Cookie にアクセスできるユーザーを制御することもできます。たとえば、次の例は、/example ディレクトリ内でのみアクセスできる「username」という名前の Cookie を設定する方法を示しています。

setcookie("username", "tom", time() + 3600 * 24, "/example");
ログイン後にコピー
つまり、setcookie 関数を使用すると、簡単に Cookie を設定でき、それにより、 Web アプリケーションの使用 データを保存およびアクセスするためのプログラム内の関数。関数を 1 回呼び出して 1 つの Cookie を設定する場合でも、複数の異なる Cookie を設定する場合でも、setcookie 関数を使用すると簡単に完了できます。

以上がsetcookie 関数を使用して PHP で Cookie を設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート