2017-09-15 11 views
0

こんにちは私はmysqlデータベースから定数を定義しようとしていますが、codeigniter設定ファイルにデータベースをロードできませんでした。PHPでmysqlデータベースから定数を定義するCodeigniter設定ファイル

$db =$CI->load->database(); 
$query = $db->get('constants'); 
foreach($query->result() as $row){ define($row->title, $row->value); } 

しかし、それは私にエラー「未定義の変数:CI」投げているのconfig/config.phpを貼り付けるこのコードの下部に

+0

私はDB操作を行うことができないと思います設定ファイルで? – Naga

答えて

1

を。コントローラテストで

require_once(BASEPATH .'database/DB.php'); 
$db =& DB(); 

$query = $db->get('constants'); 

$result = $query->result(); 

foreach($result as $row) 
{ 
    $config[$row->title] = $row->value; 
} 

echo $this->config->item('something'); 

の場合は、&作品は、あなたが使用する必要があり、設定ファイル内のCIスーパーオブジェクトを使用するには

+0

これは感謝しました! –

+0

私は創造的な答えをupvotedしかし、これは明らかに私は壊れたアプリのアーキテクチャと思われる包帯です。あなたは正直に言うと、これにはKludgeが書かれています。 CodeIgniterはすべての種類の方法を提供していますが、これがあります。 –

0

答えを受け入れてもらうためにないのに役立ちます。

$CI =& get_instance(); 
+0

エラーが発生しました。致命的なエラー:未知のエラー:クラス 'CI_Controller'がC:\ xampp \ htdocs \ xampp \ CodeIgniter \ systemに見つかりません\ core \ CodeIgniter.php –

+0

これは、設定ファイルまたはライブラリでCIスーパーオブジェクトを取得する唯一の方法です。設定ファイルを '$ this-> config-> load()'で読み込んでいますか? –

関連する問題