辅助函数未在Codeigniter模型中加载

时间:2017-11-28 11:12:13

标签: codeigniter

<?php

class  MyModel extends CI_Model {
    public function loadData()
    {
        $CI =& get_instance();
        $CI->load->helper('data_helper');
        print_r($CI->data_helper); //this is printing nothing
        $CI->data_helper->loaditems(); // method is not calling
    }
}

function loaditems()
{
    echo "hello from load of helper";
}

?>

帮助文件名为 data_helper.php

让我想一想为什么它不起作用,在哪种情况下它会起作用

3 个答案:

答案 0 :(得分:1)

将文件data_helper.php放在/application/helpers目录中。

/application/config/autoload.php中仅使用“数据”一词加载帮助程序。 (第92行)。

$autoload['helper'] = array('data');

或者您可以在$this->load->helper('data');

之前加载它

然后你可以像普通函数一样使用loaditems()

你根本不需要$CI魔法。

答案 1 :(得分:1)

根据文件

  

$this->load->helper('name');

     

其中name是帮助程序的文件名,没有 .php文件扩展名或“帮助程序”部分。

表示以下代码可以正常工作

class  MyModel extends CI_Model 
{
    public function loadData()
    {
        $this->load->helper('data');
        loaditems();
    }
}

您可以阅读更多相关信息here

答案 2 :(得分:0)

尝试使用data_helper()来调用辅助函数。

data_helper();