我想獲得某個類的對象的所有實例。在PHP中獲取一個類的所有實例
例如:
class Foo {
}
$a = new Foo();
$b = new Foo();
$instances = get_instances_of_class('Foo');
$instances
應該是array($a, $b)
或array($b, $a)
(順序無關緊要)。
A plus是如果該函數將返回具有所請求類的超類的實例,但這不是必需的。
我能想到的一種方法是使用一個靜態類成員變量,它包含一個實例數組。在該類的構造函數和析構函數中,我將從數組中添加或刪除$this
。如果我必須在很多課上做,這很麻煩,容易出錯。
你爲什麼覺得你需要這個? – troelskn 2009-01-24 12:25:42
@troelskn,我需要這個,因爲我正在製作一個事件系統,並且需要能夠將事件發送到某個類的所有對象(全局通知,如果您願意的話,它是動態綁定的)。 – strager 2009-01-24 19:39:58