You can call:
$storage->removeAll($storage);
To remove all elements.
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
SplObjectStorage::removeAll — Удаляет из текущего контейнера объекты, которые есть в другом контейнере
Удаляет из текущего контейнера объекты, которые есть в другом контейнере.
storage
Контейнер, содержащий элементы, которые требуется удалить.
Возвращает количество оставшихся объектов.
Пример #1 Пример использования SplObjectStorage::removeAll()
<?php
$o1 = new stdClass;
$o2 = new stdClass;
$a = new SplObjectStorage();
$a[$o1] = "foo";
$b = new SplObjectStorage();
$b[$o1] = "bar";
$b[$o2] = "gee";
var_dump(count($b));
$b->removeAll($a);
var_dump(count($b));
?>
Вывод приведённого примера будет похож на:
int(2) int(1)
You can call:
$storage->removeAll($storage);
To remove all elements.