检查是否可以在CodeIgniter 3上建立数据库连接

检查是否可以在CodeIgniter 3上建立数据库连接,codeigniter,codeigniter-3,Codeigniter,Codeigniter 3,我的应用程序可以与数据库一起使用,也可以不与数据库一起使用,因此我需要知道数据库是否正确配置为显示或隐藏需要数据库的功能 如何访问数据库配置变量以检查它们是否已填充 我在网上找到的所有东西都需要执行$this->load->database()这样我就可以从$this->db对象访问数据库变量 问题是,如果我们没有数据库或者数据库配置文件没有正确设置,$this->load->database()将导致PHP错误: 无法使用提供的设置连接到数据库服务器 关闭“db_调试”设置 当出现错误时,它会

我的应用程序可以与数据库一起使用,也可以不与数据库一起使用,因此我需要知道数据库是否正确配置为显示或隐藏需要数据库的功能

如何访问数据库配置变量以检查它们是否已填充

我在网上找到的所有东西都需要执行
$this->load->database()
这样我就可以从
$this->db
对象访问数据库变量

问题是,如果我们没有数据库或者数据库配置文件没有正确设置,
$this->load->database()将导致PHP错误:

无法使用提供的设置连接到数据库服务器


关闭“db_调试”设置


当出现错误时,它会触发这些消息,但显然,它只是为了帮助您进行调试。

关闭“db_debug”设置


这是在出现错误时触发这些消息的原因,但显然,这只是为了帮助您进行调试。

请告诉我您何时不需要数据库,需要数据库的依据是什么?我想你应该在每件事上都加上if。在每个页面上,如果我有一个数据库连接,我需要做额外的测试。你可以在构造方法中使用
$this->db->username
$this->db->database
等检查数据库变量。它将返回你的数据库设置。如果这不起作用,您可以使用钩子,正如我在问题中所说,
$this->db->username
返回错误
消息:尝试获取非对象的属性
,因为我没有执行
$this->load->database()
如果无法建立连接,将返回一个PHP错误。请告诉我何时不需要数据库,需要基于什么?我想你应该在每件事上都加上if。在每个页面上,如果我有一个数据库连接,我需要做额外的测试。你可以在构造方法中使用
$this->db->username
$this->db->database
等检查数据库变量。它将返回你的数据库设置。如果这不起作用,您可以使用钩子,正如我在问题中所说的,
$this->db->username
返回错误
消息:尝试获取非对象的属性
,因为我没有执行
$this->load->database()
,如果无法建立连接,将返回PHP错误。谢谢!它正在工作。但当主机名没有响应时,页面加载非常慢。我发现绕过这个的唯一方法是将主机名设置为一个空格的字符串,因为空字符串似乎会回退到localhost上。我还需要添加@来隐藏PHP警告
@$this->load->database()谢谢!它正在工作。但当主机名没有响应时,页面加载非常慢。我发现绕过这个的唯一方法是将主机名设置为一个空格的字符串,因为空字符串似乎会回退到localhost上。我还需要添加@来隐藏PHP警告
@$this->load->database()