调用非成员函数
这个问题在这里已经有了答案:
这意味着$objPage
不是一个对象的实例。 我们可以看到你用来初始化变量的代码吗?
正如您期望的特定对象类型一样,您还可以使用PHP类型提示featureDocs在违反逻辑时获取错误:
function page_properties(PageAtrributes $objPortal) {
...
$objPage->set_page_title($myrow['title']);
}
此函数仅接受PageAtrributes
的第一个参数。
有一个简单的方法来产生这个错误:
$joe = null;
$joe->anything();
将呈现错误:
致命错误:在第23行的/Applications/XAMPP/xamppfiles/htdocs/casMail/dao/server.php中的非对象上调用anything()
成员函数anything()
如果PHP会说,这会好很多,
致命错误:由Joe调用未定义,因为(a)joe为空或(b)joe未在<##>行中定义anything()
。
通常你已经构建你的类,以便$joe
没有在构造函数中定义
$objPage
不是实例变量,或者您正在用不是PageAttributes
类的实例的某个东西覆盖$objPage
。
上一篇: Call to a member function on a non
下一篇: Override association mapping of a trait property in Doctrine 2.6