argh, ci deve essere un errore stupido da qualche parte, ma non capisco dove
Ho una classe che devo usare con la tecnica Singleton (spiegata anche in un articolo di Freephp da Fabio Heller), solo che mi richiama ogni volta il costruttore, quando invece dovrebbe istanziare l'oggetto solo la prima volta
Ecco il codice, semplificato:
codice:
<?php
class ObserverService
{
private static $instance;
private function __construct()
{ echo 'a'; }
function &getInstance()
{
if(!isset(ObserverService::$istance))
{
ObserverService::$instance = new ObserverService();
}
return ObserverService::$instance;
}
}
class RequestController
{
protected $obService;
function __construct()
{
$this->obService = &ObserverService::getInstance();
}
}
$observerService = &ObserverService::getInstance();
$requestController = new RequestController();
?>
Scrive due volte 'a' e invece dovrebbe scriverlo una volta solo. Perché?