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

更新日: 2016年2月25日

実行時間: 0.0077

ユーザ設定

 CodeIgniterシステム設定の他に、ユーザ独自の設定ファイルを作成し利用することが可能です。
ユーザ設定ファイルも環境毎に

  • application/config/development/
  • application/config/testing/
  • application/config/production/
それぞれのディレクトリに配置することで、環境別の設定を利用することができます。

設定方法

「application/config/」ディレクトリ配下に拡張子を「.php」とした任意のファイル名でファイルを作成します。 できれば、システムの設定ファイルと競合しないよう、「my_」などのプリフィックスを付けることをお勧めします。
(CodeIgniterのシステム設定ファイル名、CodeIgniterのライブラリ名と同名のファイル名はユーザ設定ファイルに利用できません。)

  • 設定ファイル
  • application/config/my_app_common.php
    application/config/development/my_shop.php
    application/config/testing/my_shop.php
    application/config/production/my_shop.php

設定項目は、作成した設定ファイルに連想配列「$config」を必要な項目数だけ指定します。
連想配列の添え字(インデックスキー)が設定項目名となり、その連想配列の値が設定値となります。

  • 設定項目・設定値
  • $config['MYAPP_VERSION'] = '1.1.0';
    設定値を配列にすることも可能です。
    $config['SHOP_CODE'] = array(
        'abc' => '一号店',
        'xyz' => '二号店',
    );

設定値の利用

ユーザ設定はコントローラやモデル等からは、まず設定ファイルをロードして設定オブジェクトから設定値を読み込みます。

  • 設定ファイルのロード
  • $this->config->load('my_app_common');

    設定ファイルのロードは「$this->config->load()」の引数に拡張子「.php」を除いたファイル名を指定します。

  • 設定値の読込
  • $version = $this->config->item('MYAPP_VERSION');
    echo $version;
    // 1.1.0

    $shop_code = $this->config->item('SHOP_CODE');
    echo $shop_code['abc'];
    // 一号店

    設定値の読込は、 $this->config->item()の引数に設定項目名(設定連想配列の添え字)を指定します。