Call to a member function get() on a non-object
这个问题经常出现。我自己总结,原因大概是一下几点:
[1] get()方法返回的是空值。如果是这个原因,最好在foreach里加个array强制判断,一般就能避免出现这个问题。
[2] private属性函数的返回值被不恰当调用。
[3] 数据库中没有相关表或get()中表名、前缀名、字段名笔误。
[4] 在构造函数中定义的变量及变量的初始值,但在函数中变量的赋值类型与构造函数中不符。比如定义array类型在构造函数里,但在函数中赋值str类型(但也不是所有时候都报错)。
[5] 有些循环累加操作,如“.=”时,需要之前先设置好一个空变量,然后再将“.=”的值赋给这个变量。如果直接赋值,一般就要出错。
[6] mysqli或mysql的方式连接数据出现错误。尝试改换成mysql或mysqli。
我碰到的Call to a member function get() on a non-object,基本能在上面的可能里找到答案。希望能帮到你。