【问题标题】:Connecting to the database in a Created Library - CodeIgniter连接到已创建库中的数据库 - CodeIgniter
【发布时间】:2011-12-01 01:48:31
【问题描述】:

我现在有一个小问题困扰着我,希望你们中的一个能够帮助我。

基本上我正在创建一个要在 CodeIgniter 中使用的库,但我收到了这个错误:

A PHP Error was encountered

Severity: Notice

Message: Undefined property: Functions::$db

Filename: libraries/Functions.php

Line Number: 11

数据库库以及我的函数库已经在自动加载:

$autoload['libraries'] = array('database','session','encrypt','functions');

Functions.php 文件相应地位于application/libraries 文件夹中。

第 11 行包含以下内容:

$this->db->where('username', $data);

不确定为什么db 是未定义的属性?

【问题讨论】:

    标签: php database codeigniter


    【解决方案1】:

    这可能是因为您需要先获取 CI 实例,因为尚未加载所有内容:

    $ci =& get_instance();
    $ci->db->where('username', $data);
    

    看看是否有帮助。另请参阅说明here

    【讨论】:

    • 我也确实发现了,在发布这个问题之前,我真的应该向下滚动一点!谢谢。
    • 对了,你能解释一下我以前从未见过的&=吗?
    • 它被称为passing by reference(而不是按值)...这意味着您正在访问现有的 CI 对象并现在创建它的副本。您可能会发现阅读 Singleton patterns 会很有趣。其实&跟函数名有关,不是=操作符...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-23
    • 2019-06-09
    • 2015-09-30
    • 2018-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多