web-dev-qa-db-ja.com

CodeIgniter-ビューで$ config変数にアクセスする

ビューで$config変数にアクセスする必要があることはかなりあります。コントローラからload->view()に渡すことができることを知っています。しかし、明示的に行うのは過度に思えます。

予備のコードでコントローラーを妨害することなく、CIビューから$config変数にアクセスする方法やトリックはありますか?

96
AlexA

$this->config->item()は正常に動作します。

たとえば、構成ファイルに$config['foo'] = 'bar';が含まれている場合、$this->config->item('foo') == 'bar'

187
Phil Sturgeon

また、共通関数config_item()はCodeIgniterインスタンス全体でほぼどこでも動作します。コントローラー、モデル、ビュー、ライブラリー、ヘルパー、フックなど。

27
Phil Sturgeon

次のようなことができます:

$ci = get_instance(); // CI_Loader instance
$ci->load->config('email');
echo $ci->config->item('name');
15
Alexey Shein

$this->config->item('config_var')は私のケースでは機能しませんでした。

ビューで変数をエコーするためにのみconfig_item('config_var');を使用できました

8
user1002232

コントローラーは、データベース、構成などからすべての情報を収集する必要があります。これに固執するのには多くの理由があります。正当な理由の1つは、これにより、情報のソースを非常に簡単に変更でき、ビューを変更する必要がないことです。

4
Utah_Dave

構成変数にアクセスする必要があるときはいつも、次のように使用します:$ this-> config-> config ['variable_name'];

2
The website-lab
echo $this->config->config['ur config file'] 

あなたの設定ファイルもこのようにアクセスする必要がある場合は、たとえば、configフォルダにapp.phpを含め、変数があります

$config['50001'] = "your  message"   

これで、コントローラーまたはモデルにアクセスできます。

次の2つのケースを試してください。

case1:

$msg = $this->config->item('ur config file');

echo $msg['50001'];    //out put:  "your message";

case2:

 $msg = $this->config->item('50001');

 echo $msg;    //out put:  "your message"
2

これが私がやった方法です。 config.phpで

$config['HTML_TITLE'] = "SO TITLE test";

Applications/view/header.php(htmlコードを想定)

<title><?=$this->config->item("HTML_TITLE");?> </title>

Example of Title

1
fangstar

$config['cricket'] = 'bat'; config.phpファイル内

$this->config->item('cricket')ビューでこれを使用

1
Rick