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


101

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

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

回答:



29

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


1
これをありがとう-フックから設定値にアクセスできませんでした。他の誰にとっても、これはうまくいきます。
CashIsClay 2013年

1
ただし、config_item()衝突防止機能はありません$this->config->item()
Ijas Ameenudeen 14

15

あなたはそのようなことをすることができます:

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

3
ビュー内の$ thisは通常どおりCI_Loaderを参照し、get_instance()はCI_Base()を参照します。
フィルスタージョン

8

$this->config->item('config_var') 私の場合はうまくいきませんでした。

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


4

コントローラは、データベース、構成などからすべての情報を収集する必要があります。これを守る理由はたくさんあります。これにより、情報のソースを非常に簡単に変更できるようになり、ビューに変更を加える必要がなくなります。


2

私が使用する傾向がある構成変数にアクセスする必要があるときはいつでも:$ this-> config-> config ['variable_name'];


理由はわかりませんが、今日から$ this-> config-> item( 'var_name'); 私にとってはもう機能しませんでした。別の方法をありがとう。この方法は合法ですか?
dapidmini

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

設定ファイルも画像に表示される場合は、たとえば次のようにアクセスする必要があります。configフォルダーにapp.phpを含めます。変数があります。

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

今、私は自分のコントローラーまたはモデルでアクセスしたいです。

うまくいくはずの2つのケースを試してください

ケース1:

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

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

ケース2:

 $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>

タイトルの例


1

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

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


0

使用するよりもコントローラに設定変数にアクセスしようとしている場合

$this->config->item('{variable name which you define into config}');

コントローラーの外部(ヘルパー/フック)に構成変数にアクセスしようとしている場合は、次を使用します。

$mms = get_instance();  
$mms->config->item('{variable which you define into config}');

0

例、あなたが持っている場合:

$config['base_url'] = 'www.example.com'

次にconfig.phpに設定します

echo base_url();

これはほとんどすべての場所で非常にうまく機能します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.