1
A
回答
1
我发现它非常有趣你的问题,并一直在做一些研究来解决你的问题。 我告诉你,我的解决方案:第一个是激活挂钩,所以在你的config.php文件,使这一变化:
$config['enable_hooks'] = TRUE;
一旦被激活的钩子,你需要创建一个新的钩子,它在文件的config/hooks.php把类似如下:
$hook['post_controller_constructor'] = array(
'class' => 'DBTest',
'function' => 'index',
'filename' => 'dbtest.php',
'filepath' => 'hooks',
'params' => array(),
);
因此,一旦控制器已被实例化,但一直运行没有方法还你的钩踢。这是neccesary使用$ CI = & get_instance()
要完成创建内容的文件/application/hooks/dbtest.php类似以下内容:
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class DBTest {
function index() {
$CI = &get_instance();
$databases = array(
'mysqli://user1:[email protected]/db1',
'mysqli://user2:[email protected]/db2',
'mysqli://user3:[email protected]/db3',
'mysqli://user4:[email protected]/db4',
'mysqli://user5:[email protected]/db5',
);
foreach ($databases as $dsn) {
$db_name = substr(strrchr($dsn, '/'), 1);
$CI->load->database($dsn);
$CI->load->dbutil();
if(!$CI->dbutil->database_exists($db_name)) {
// if connection details incorrect show error
show_error("Site is not available: can't connect to database $db_name");
}
}
}
}
您必须使用DSN为$ CI - > load-> database()以这种方式,当它试图加载数据库时,我们可以处理错误而不是代码点火器。
希望这会有所帮助。
相关问题
- 1. SQL如何检查数据库数据的有效性?
- 2. 数据库清理检查所有者
- 3. 如何检查2数据库中的数据
- 4. 从数据库检查edmx有效性
- 5. 检查数据库中用户ID的可用性
- 6. 使用PHP检查MySQL数据库中URL的可用性?
- 7. 如何检查数据库
- 8. 如何检查数据库
- 9. 如何检查所有父元素的可见性?
- 10. 查询oracle数据库的可用性
- 11. 如何检查数据库可用或不在android?
- 12. 即时用户名检查可用性使用数据库asp.net
- 13. 如何查看数据库中的所有数据?
- 14. 如何检查数据库中是否有相同的数据?
- 15. 数据有效性检查
- 16. 检查oracle数据库是否可用
- 17. 如何检查CI中的数据是否成功更新?
- 18. 如何分辨Automapper,检查所有源属性有目的性
- 19. 检查公有CloudKit数据库中记录的所有权
- 20. 如何显示Wordpress所做的所有数据库查询?
- 21. 检查所有数据值在表
- 22. 查询以检索所有提交的数据少于2周
- 23. 在C#中,如何使用SQL来检查数据库中的现有数据?
- 24. 如何检索我的数据库中的所有行?
- 25. 如何检查数据库是否存在,该数据库的用户有权连接该数据库 - Laravel
- 26. 如何查看phpMyAdmin中的所有数据库为phpmyadmin用户?
- 27. 检索所有行数据库的Grails
- 28. 如何在2表中插入数据并检查数据库中是否存在数据库中存在php
- 29. 如何检查数据库中的所有标签页UserId-X.过程
- 30. 如何使QAbstractTableModel的数据可检查
那么,你是否说你想关闭访问该网站,如果即使一个数据库无法连接? – Brendan