【PHP】Cookie(クッキー)にデータを保存するには!?

php

PHPでプログラムする上でやっぱCookie(クッキー)について勉強することもあると思います。
でCookie(HTTP Cookie)とは、Webブラウザを通してパソコンに一時的にデータを保存させる仕組みですが、PHPを使ってデータを保存する方法を記載しておきます。

setcookieの引数

setcookieの引数についてメモ。引数は下記のようになる。
ちなみにsetcookieはHTTPヘッダー内で送信されるのでhtmlより前に記述する

//setcookie("クッキー名","保存する値","有効期限");

setcookie("myid","ほげほげ",time()+60);
  • クッキー名:グローバル変数の$_COOKIEで受け取る際に必要になる
  • 保存する値:保存したい値・・IDとかPWとか
  • 有効期限:タイムスタンプ形式なのでtime()関数で現在のタイムスタンプを取得できる

*タイムスタンプは1970年1月1日からの経過秒数。秒で扱うので有効期限1分の場合は60秒となる。下記を参照

//有効期限1分
time()+60;

//有効期限10分(秒で表すと600秒)
time()+60*10;

//有効期限1日()
time()+60*60*24
time()+24*3600;(3600は60秒×60分で一時間3600秒となる。3600秒に一日24時間なので24をかける)

//有効期限1週間
time()+60*60*24*7;
time()+3600*24*7

クッキーの取得

上記で設定したクッキーを取得する場合は下記のようにグローバル変数の$_COOKIEを使用する。
$_COOKIEに指定する引数はsetcookieの第一引数に指定した値。

$myid=$_COOKIE["myid"]; 

クッキーの削除

クッキーの削除はsetcookieの引数に削除するクッキー名を指定するだけでクッキーを削除する動作する関数になる

setcookie("myid");

IDを保存するサンプル

とりあえずサンプルとしてIDとPWを入力して保存した後に再度入力画面に戻るとクッキーによってIDの入力フィールドに前回入力した値を表示する。

フォームで入力する「cookie-input.php」



    
        
        
    
    
        
        



クッキーを保存したか確認する画面「cookie-out.php」




    
        
        
    
    
        
        

戻る

デモ