このエントリーをはてなブックマークに追加

更新日: 2016年2月25日

実行時間: 0.0236

COOKIE ヘルパー

 COOKIE ヘルパーは「 system/helper/cookie_helper.php 」ファイルで、 COOKIEにデータをセットしたり、取得、削除する関数が定義されています。

COOKIE ヘルパーのロード

 「 CI_Loader 」クラスの「 helper() 」メソッドでロードします。

    $this->load->helper('cookie');

COOKIE のデフォルト設定

 「 application/config/config.php 」設定ファイルで、COOKIEのデフォルト設定が行えます。
 「 application/config/config.php 」設定ファイルでの設定は必須ではなく、「set_cookie()」関数実行時に 設定情報を指定することもできます。

  • application/config/config.php
項目 デフォルト 説明
$config['cookie_prefix'] 名前衝突を避けるために必要であればプリフィックス文字列を設定します。
$config['cookie_domain'] Cookieを許容するドメインを設定します。空の場合は現在のURLからドメインを取得します。
$config['cookie_path'] / Cookieを許容するURIパスを設定します。
$config['cookie_secure'] FALSE セキュアページ(HTTPS)のみCookieを許可する設定です。TRUEでセキュアページの み許可されます。

COOKIE ヘルパーの関数

set_cookie(
    $name = '',
    $value = '',
    $expire = '',
    $domain = '',
    $path = '/',
    $prefix = '',
    $secure = FALSE
)

 COOKIE にデータをセットします。
 「 set_cookie() 」関数は、「 CI_Input 」クラスの 「 set_cookie() 」メソッドのラッパー関数です。
 詳細は、「 CI_Input 」クラスの「 set_cookie() 」メソッド の項をご覧ください。

    $this->load->helper('cookie');

    set_cookie('key', 'value', 3600);


get_cookie($index = '', $xss_clean = FALSE)

 COOKIE からデータを取得します。
 「 application/config/config.php 」設定ファイルの「 $config['cookie_prefix'] 」で設定した プリフィックスが自動で、第一引数で指定したCOOKIEのパラメータ文字列に付加されます。

 「 set_cookie() 」関数は、第一引数にプリフィックスを付加し、第二引数と共に「 CI_Input 」コアクラスの 「 set_cookie() 」メソッドの引数に渡し実行します。

    $this->load->helper('cookie');

    $value= get_cookie('key');
    echo $value;
    // value


delete_cookie($name = '', $domain = '', $path = '/', $prefix = '')

 第一引数で指定したパラメータのCOOKIEを削除します。
 もし、「 set_cookie() 」関数に「 $domain 」「 $path 」「 $prefix 」を指定してCOOKIEをセットした場合は、 同じものを引数に指定する必要があります。
 引数には、「 set_cookie() 」関数、「 CI_Input 」クラスの「 set_cookie() 」メソッドと同様に連想配列で
指定することも可能です。

    $this->load->helper('cookie');

    delete_cookie('key');
    $cookie = array (
        'name' => 'key',
        'domain' => 'www.ci-guide.info',
        'path' => '/practical/helper/cookie/',
    );
    delete_cookie($cookie);