0

以下のようなコードでcustom.php(configフォルダー内)を取得しました

$config['myurl'] = 'somesite.com';

config.php (標準 CI) を取得したので、このように custom.php の値を使用して base_url を設定したい

$config['base_url'] = $this->config->item('myurl');

そうすることでエラーが発生しました

Using $this when not in object context in /Volumes/HD 2/work/vnl/app/config/config.php on line 18

この目的に適したコードは何ですか?

4

2 に答える 2

0

配列を操作するだけです。カスタム構成ファイルで

$config['myurl'] = 'myurl.com';

$config['base_url'] = &$config['myurl'];

これにより、カスタム構成ファイルが読み込まれるとデフォルトの base_url が変更されます。カスタム構成で base_url 要素をリセットすることもできますが、プロジェクトの後半で別の構成ファイルでベース URL をリセットすることはお勧めしません。設定されている場所を見失う可能性があります。メインの構成ファイルに設定してみませんか (条件を使用することもできます)。

于 2013-04-16T16:32:17.483 に答える
0

これはそこではうまくいきません。そこで$this使用したいのはコントローラーインスタンスであり、標準のapplication/config/config.phpロード時にはまだ作成されていません。

pre_systemフック(構成オブジェクトの直前にロードされる)を追加して、呼び出すことができるいくつかのヘルパー関数に含めて、 application/config/config.php. のような通常の定数APPPATHが利用可能になります。

この構成変数を定数にすることができれば、それも機能します (define()内部に を入れるだけapplication/config/constants.phpです)。構成ファイルは単なる通常の php ソース ファイルであるため、必要に応じてここにも条件を含めることができます。

于 2013-04-16T04:55:36.080 に答える