(PHP 5 >= 5.3.6)
SplObjectStorage::removeAllExcept — Removes all objects except for those contained in another storage from the current storage
Removes all objects except for those contained in another storage from the current storage.
The storage containing the elements to retain in the current storage.
Эта функция не возвращает значения после выполнения.
Пример #1 SplObjectStorage::removeAllExcept() example
<?php
$a = (object) 'a';
$b = (object) 'b';
$c = (object) 'c';
$foo = new SplObjectStorage;
$foo->attach($a);
$foo->attach($b);
$bar = new SplObjectStorage;
$bar->attach($b);
$bar->attach($c);
$foo->removeAllExcept($bar);
var_dump($foo->contains($a));
var_dump($foo->contains($b));
?>
Результатом выполнения данного примера будет что-то подобное:
bool(false) bool(true)