【发布时间】:2010-09-08 10:44:54
【问题描述】:
所以我正在重构我的代码以实现更多的 OOP。我设置了一个类来保存页面属性。
class PageAtrributes
{
private $db_connection;
private $page_title;
public function __construct($db_connection)
{
$this->db_connection = $db_connection;
$this->page_title = '';
}
public function get_page_title()
{
return $this->page_title;
}
public function set_page_title($page_title)
{
$this->page_title = $page_title;
}
}
稍后我像这样调用 set_page_title() 函数
function page_properties($objPortal) {
$objPage->set_page_title($myrow['title']);
}
当我收到错误消息时:
在非对象上调用成员函数 set_page_title()
那么我错过了什么?
【问题讨论】:
-
那个 objPage 不引用 PageAtrributes 对象的实例(或者实际上,任何对象)。在上一行尝试 var_dump 看看它实际上是什么。
-
首先,创建一个类的实例,其次,定义它: $new_instance = new Class();然后将其定向到您的方法,例如: $new_instance->set_page_title('MyNewTitle');
标签: php