codeigniter 无法加载库
Posted
技术标签:
【中文标题】codeigniter 无法加载库【英文标题】:codeigniter cannot load library 【发布时间】:2011-06-14 04:00:43 【问题描述】:我有一个问题,我无法在我的控制器中加载我的库:S
我收到此错误:消息:未定义属性:Profil::$profileWall
我的图书馆:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class ProfileWall
private $CI;
public function __construct()
$this->CI =& get_instance();
public function wallShow()
$this->CI->load->model('profil_model');
return $this->CI->profil_model->wallGet($this->CI->uri->segment(3));
和我的控制器
function index()
$this->load->model('profil_model');
$data['query'] = $this->profil_model->vis_profil($this->uri->segment(3));
//Henter lib profilwall så man kan vise wall beskeder i profilen
$this->load->library('profileWall');
$data['queryWall'] = $this->profileWall->wallShow();
$data['content'] = 'profil_view';
$this->load->view('includes/template', $data);
我做错了什么?
【问题讨论】:
您使用的是哪个版本的 CI?你在哪里保存Profilewall.php
【参考方案1】:
确保您的库加载始终以小写形式完成,根据Documentation,对象实例将始终小写。
还要确保你的库文件是大写的ProfileWall.php
示例加载$this->load->library('profilewall');
用法$this->profilewall->function();
【讨论】:
非常感谢:D 它只是 profilewall 然后我加载了库,所以只有小写:D 非常感谢!我从来不知道这一点,并浪费了一天。我现在会更多 rtfm。 :) 我们可以禁用这些 Codeigniter 命名约定吗?因为我是 Java 背景,想使用 Java 命名约定。【参考方案2】:代码点火器中的库没有集中用于小写, 您是否将您的库放在文件夹应用程序/库中?前 或尝试使用 CI_ProfileWall 更改您的班级名称
【讨论】:
【参考方案3】:我已使用 CKEditor CKFinder 将我的文件保存在 /libraries 文件夹中。 我将 CKFinder 的第一个字母更改为 Ckfinder,将 CKEditor 更改为 Ckeditor。 工作正常。
在你的 profileWall 中,应该是 Profilewall
【讨论】:
【参考方案4】:我遇到了同样的问题,经过很多次后,我意识到我以错误的格式加载了我的库。我没有将它们放入array
。我变了
$this->load->library('email','custom');
到 $this->load->library(array('email','custom'));
。
【讨论】:
以上是关于codeigniter 无法加载库的主要内容,如果未能解决你的问题,请参考以下文章