Php CodeIgniter“;不在对象上下文中使用$this“;在功能上
如何在代码中替换$this变量?我知道在函数中使用$this是不正确的,但我不知道如何替换它Php CodeIgniter“;不在对象上下文中使用$this“;在功能上,php,mysql,codeigniter,Php,Mysql,Codeigniter,如何在代码中替换$this变量?我知道在函数中使用$this是不正确的,但我不知道如何替换它 function get_dates($id) { $class = $this->db->query("SELECT * FROM schedule WHERE class_id='".$id."'"); $class = $class->result_array(); return $class; } 另外,我不想使用mys
function get_dates($id) {
$class = $this->db->query("SELECT * FROM schedule WHERE class_id='".$id."'");
$class = $class->result_array();
return $class;
}
另外,我不想使用mysql和standart php功能,我坚信使用CI功能可以解决这个问题。如果您想从普通函数内部访问CI框架,您需要获得一个CI实例
function get_dates($id) {
$ci =& get_instance();
$class = $ci->db->query("SELECT * FROM schedule WHERE class_id='".$id."'");
$class = $class->result_array();
return $class;
}
如果您在Helpers或library中,并且希望访问控制器对象,则必须使用以下用户:
$ci =& get_instance();
一旦您获得控制器对象,您就可以通过$ci引用访问任何公共方法或成员,您也可以通过设置获取对象的getter方法来获取模型对象,然后简单地引用该对象以查询数据库。我没有看到
$this
(顺便说一句:您在db
中缺少的$
)为什么不在对象上下文中?你不是在和模特一起工作吗?如果使用公共函数获取日期($id){<代码> >它解决了你的错误吗?< <代码> $<这个/<代码>实际上是正确的,但是你的上下文听起来是错误的。顺便说一下,你的代码是脆弱的。OOP,我好像忘记撤消了。$$-dB->这里是你的模型吗?@四叶草:请注意,最好的做法是将业务逻辑保持在模型内。虽然代码ROONYL写的是V。alid,最好将查询放在模型和方法中。