或者换句话说,我应该在附加之前检查它是否已经在集合中吗?
$s = new SplObjectStorage();
foreach($arrayOfObjects as $primaryObject) {
$subObject=$primaryObject->getSubObject(); //It is possible that a given instance of $subObject might be used in more than one $primaryObject
if(!$s->contains($subObject)) {
$s->attach($subObject);
}
}