2017-06-30 5 views
0

Code Igniter - best place to declare global variableによれば、私はCodeigniterでグローバル変数を作成できます。Codeigniterでグローバル変数とコンフィグ変数を作成する違いは何ですか?

Codeigniterのconfig.phpにもカスタム設定変数を追加できます。

上記2つの方法の違いは何ですか?私は、プロジェクト全体にいくつかの価値を蓄える必要がある場合は、どのような方法を使用すべきですか?

+0

セッション変数には、いつでも情報を保存できます。 ...または単にConstants.phpを追加してください – TigerTiger

+1

値を変更しない場合は、定数を定数として設定してください。その値に対して何らかのアクションを実行して別のアクションを実行する場合は、設定ファイルに設定します。 – Tpojka

答えて

0

configに格納されている値は、値を読み取るために追加の手順が必要になることが主な違いです。 varがconstants.phpで定義されている場合は、直接使用することができます。 constants.phpで

$my_global = 'foo'; 

は、値がconfig.phpの

$config['my_global'] = 'foo'; 

に格納されている場合、あなたから値を読み込む必要が直接

echo $my_global.'bar'; //outputs "foobar" 

使用することができますあなたがそれを使用する前に設定してください。

$my_global = $this->config->item('my_global'); 
echo $my_global.'bar'; //outputs "foobar" 

直接

echo $this->config->item('my_global').'bar'; //outputs "foobar" 

定数設定の検索を使用し、定義により、スクリプトの実行中に変化しない値です。それが必要な場合は、値を定数として定義します。

define(MY_GLOBAL, 'foo'); 
echo MY_GLOBAL.'bar'; //outputs "foobar" 

スクリプト実行中に値を動的に変更する必要がある場合は、代わりにconfigを使用します。

constants.phpとconfigライブラリの両方は、フレームワークの初期化の初期段階でロードされるため、コントローラのインスタンス化時に使用できます。

関連する問題