【问题标题】:How do you load a helper within a library in codeigniter?如何在 codeigniter 的库中加载帮助程序?
【发布时间】:2012-01-31 04:40:51
【问题描述】:

我为 API 访问创建了一个库,并为该库使用的常用函数创建了一个单独的帮助程序。在 codeigniter 中,新库可以通过使用...创建自己的实例来访问本机类。

$example_instance = & get_instance();

我这样做了,加载了我的助手-但每次调用助手函数时,我都会收到“尝试访问非对象”错误。我究竟做错了什么?

这就是我所拥有的

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 

class api_example {
private $api;
public function __construct(){
    $this->api = & get_instance();
    $this->api->load->helper('helper_test');
}   

public function search_recent($param){

    $string = $this->api->helper_test->connect($url); //error!!!

    return $xml;
}


}

/* End of file  */

【问题讨论】:

  • 作为预防措施.. 是名为“helper_test”的帮助文件.. 标点符号确实是我所追求的。似乎没有加载帮助文件。
  • 我们可以看看你的helper_test 代码吗?

标签: codeigniter helper


【解决方案1】:

CodeIgniter 助手应该是函数,而不是类。

简单尝试:

$string = connect($url);

【讨论】:

  • 他的班级是他的图书馆。他正在尝试将帮助程序加载到库中。
  • @MattMoore:好的。不会改变任何事情。很高兴我们意见一致。
  • 哇,我完全错过了。助手本质上只是一个函数——拥有一个加载它的自定义类并不会改变这一事实。出于某种原因,当我创建这个库时,我的大脑刚刚关闭......非常感谢。
【解决方案2】:

这不是从助手调用函数的方式。辅助函数不是 CodeIgniter 对象的一部分。它们只是函数。

$string = connect($url);

【讨论】:

    猜你喜欢
    • 2012-01-27
    • 2010-12-13
    • 2018-01-14
    • 1970-01-01
    • 1970-01-01
    • 2016-02-09
    • 1970-01-01
    • 2020-08-22
    • 2022-09-29
    相关资源
    最近更新 更多