数据库中的CodeIgniter设置可在所有页面上访问

时间:2013-03-22 16:12:05

标签: php codeigniter codeigniter-2

我的数据库中有一个名为settings的表,其结构为{id,name,value}。 我希望所有页面都可以使用变量,例如$ setting [name] =>值.... 我尝试将它放在帮助程序上并自动加载它,但帮助程序无法访问数据库。还有其他想法吗?感谢

1 个答案:

答案 0 :(得分:3)

http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html

创建一个名为MY_Controller的类,它扩展CI_Controller并将其保存在应用程序下的核心文件夹中。然后让所有其他类扩展MY_Controller而不是CI_Controller。

然后你可以在MY_Controller的构造函数中设置你的值

<?PHP
class MY_Controller extends CI_Controller
{

    function __construct()
    {
        parent::__construct();
        $settings = $this->db->get('settings');
    }

这样就可以根据需要为所有控制器提供$设置。只需记住您需要的控制器,必须扩展MY_Controller!

class A_new_controller extends MY_Controller {