我有以下代码:
class Badge extends CI_Model
{
public function foo()
{
echo $this->bar('world');
}
public function bar($word)
{
return $word;
}
}
但它总是给我一个错误echo $this->bar('world');
。
调用未定义的方法(......)
我有以下代码:
class Badge extends CI_Model
{
public function foo()
{
echo $this->bar('world');
}
public function bar($word)
{
return $word;
}
}
但它总是给我一个错误echo $this->bar('world');
。
调用未定义的方法(......)
您没有将模型加载到控制器中:
public function test()
{
$this->load->model('badge');
$this->badge->foo();
}
因为代码有效 - 我刚刚通过使用未经编辑的模型粘贴对其进行了测试:
class Badge extends CI_Model
{
public function foo()
{
echo $this->bar('world');
}
public function bar($word)
{
return $word;
}
}
输出:
world
为了避免任何外部调用依赖,您需要获取 Codeigniter 实例并通过实例调用方法。
class Badge extends CI_Model
{
public function foo()
{
$CI =& get_instance();
echo $CI->Badge->bar('world');
}
public function bar($word)
{
return $word;
}
}