Ciao,
spulciando tra vari framework, posso dirti che una possibile soluzione al tuo problema sia creare una classe statica per istanziare le classi che vuoi che siano singleton.
Ad esempio

Codice PHP:
$miaClasse Loader::load('MiaClasse'); 
La classe statica al suo interno avrà un array che conterrà le istanze degli oggetti singleton ( se precedentemente richiamati, altrimenti è vuoto ).
Ovviamente bisognerà fornire a questa classe un array contenente tutte le classi singleton valide e questo forse può dare fastidio.


Il risultato che vuoi raggiungere tu senza dover cambiare rotta ( ovvero estendere Singleton ) può essere raggiunto implementando questo codice presente nel costruttore della classe Configurable del framework 'Taste':

Codice PHP:
   $this->sections = array();
        
    
$class get_class($this);
    
$this->sections[] = $class;
        
     while(
$class get_parent_class($class))
        
$this->sections[] = $class

L'ultimo indice dell'array 'sections' dovrebbe essere il nome della classe che cerchi.
Fammi sapere.

Ciao