Obtenez toutes les instances d'une classe en PHP

Je voudrais obtenir toutes les instances d'un objet d'une certaine classe.

Par exemple:

class Foo {
}

$a = new Foo();
$b = new Foo();

$instances = get_instances_of_class('Foo');

$instances doit être array($a, $b) ou array($b, $a) (l'ordre n'a pas d'importance).

Un plus est si la fonction serait de retour instances qui ont une super-classe de la classe demandée, si ce n'est pas nécessaire.

Une méthode, je pense, à l'aide d'un membre de classe statique de la variable qui est titulaire d'un tableau d'instances. Dans le constructeur de la classe et destructeur, je voudrais ajouter ou supprimer des $this de la matrice. C'est plutôt gênant et sujettes à l'erreur si je dois le faire sur un grand nombre de classes.

Pourquoi pensez-vous que vous en avez besoin?
J'ai besoin de cela parce que je fais un système d'événements et doivent être en mesure d'envoyer des événements à tous les objets d'une certaine classe (un mondial de la notification, si vous voulez, qui est lié dynamiquement).

OriginalL'auteur strager | 2009-01-24