我有以下的php代码;
component_customer_init();
component_customer_go();
function component_customer_init()
{
$customer = Customer::getInstance();
$customer->set(1);
}
function component_customer_go()
{
$customer = Customer::getInstance();
$customer->get();
}
class Customer
{
public $id;
static $class = false;
static function getInstance()
{
if(self::$class == false)
{
self::$class = new Customer;
}
else
{
return self::$class;
}
}
public function set($id)
{
$this->id = $id;
}
public function get()
{
print $this->id;
}
}
?>
我得到以下错误;
致命错误:对第9行/../classes/customer.php中的非对象调用成员函数set()
有人能告诉我为什么我会犯这个错误吗?我知道这段代码可能看起来很奇怪,但它是基于我为cms编写的组件系统。目的是能够替换模板中的html标记,例如;
与;
我还需要调用“customer”类的预呈现方法,以便在输出之前验证表单等。
如果有人能想出更好的方法,请让我知道,但首先,我想知道为什么我会得到上述“致命错误”。