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.