I禁用了自动加载数据库,因为我的网站的许多页面不需要数据库连接或处理。如果我需要数据库处理,当我的页面需要数据库支持时,我会手动执行$this->load->database();
。
现在,我想知道的是:我将启用自动加载,并在配置文件中设置$db['default']['autoinit'] = FALSE;
。这和上面的方法一样有效吗?我的意思是,当相关页面中只需要数据库时(不是在每个页面调用中),数据库会被加载吗?这就是我想要的?
感谢
实际上答案是NO
。
如果启用auto-loading
,则它将自动加载到控制器中,但如果设置autoinit=false
,则它在加载库时不会连接到数据库,因为默认情况下,db library
在加载时会连接到数据库。
autoinit-是否自动连接到数据库当库加载时。如果设置为false,则连接将放置在执行第一查询之前。
当autoinit=false
时,连接将在第一个query
发生之前进行,但它将自动加载,并在每个控制器中可用。
阅读此处。