У меня есть следующий код PHP;
<?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;
}
}
?>
Я получаю следующую ошибку;
Неустранимая ошибка: вызов функции-члена set () для необъекта в /.../classes/customer.php в строке 9
Может кто-нибудь сказать мне, почему я получаю эту ошибку? Я знаю, что этот код может выглядеть странно, но он основан на системе компонентов, которую я пишу для CMS. Цель состоит в том, чтобы иметь возможность заменить HTML-теги в шаблоне, например;
<!-- component:customer-login -->
с *; 1013 *
<?php component_customer_login(); ?>
Мне также нужно вызывать методы предварительного рендеринга класса "Customer" для проверки форм перед выполнением вывода и т. Д.
Если кто-нибудь может придумать лучший способ, пожалуйста, дайте мне знать, но прежде всего я хотел бы знать, почему я получаю упомянутую выше «фатальную ошибку».