我们可以在 config/constants.php 文件中触发数据库查询以使常量动态化吗? (Php 代码点火器)
Can we fire a database query in config/constants.php file to make constants dynamic? (Php Codeignitor)
我试着把它放在 config/config 的底部。php
require_once( BASEPATH .'database/DB.php');
$db =& DB();
$query = $db->get('constants');
$result = $query->result();
foreach( $result as $row)
{
$config[$row->title] = $row->value;
}
但它抛出了这个错误:
遇到未捕获的异常
类型:错误
消息:Class 'CI_Controller' 未找到
文件名:E:\xampp74\htdocs\jrvs\system\core\CodeIgniter.php
行号:369
请给我一些解决方案。如果这不可能,那么我们还能做些什么来使常量动态化?
constants.php 是在 Codeigniter.php 中加载的第一个文件,因此您不能使用此文件中的 codeigniter 实例导致 if 尚未加载,当然你不能依赖挂钩,因为它在加载此文件并定义常量后加载!
您最好的选择是在此文件顶部或 index.php 中手动连接到您的数据库并查询您需要的内容,然后使用定义中的值。
我试着把它放在 config/config 的底部。php
require_once( BASEPATH .'database/DB.php');
$db =& DB();
$query = $db->get('constants');
$result = $query->result();
foreach( $result as $row)
{
$config[$row->title] = $row->value;
}
但它抛出了这个错误: 遇到未捕获的异常
类型:错误 消息:Class 'CI_Controller' 未找到 文件名:E:\xampp74\htdocs\jrvs\system\core\CodeIgniter.php 行号:369
请给我一些解决方案。如果这不可能,那么我们还能做些什么来使常量动态化?
constants.php 是在 Codeigniter.php 中加载的第一个文件,因此您不能使用此文件中的 codeigniter 实例导致 if 尚未加载,当然你不能依赖挂钩,因为它在加载此文件并定义常量后加载!
您最好的选择是在此文件顶部或 index.php 中手动连接到您的数据库并查询您需要的内容,然后使用定义中的值。