SplObjectStorage::removeAllExcept
(PHP 5 >= 5.3.6, PHP 7, PHP 8)
SplObjectStorage::removeAllExcept — Removes all objects except for those contained in another storage from the current storage
Description
Removes all objects except for those contained in another storage from the current storage.
Parameters
- 
storage
- 
      The storage containing the elements to retain in the current storage. 
Return Values
Returns the number of remaining objects.
Examples
Example #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));
?>
The above example will output something similar to:
bool(false) bool(true)
 
                     
                     
                     
                     
                    
 
          