The SplObjectStorage::detach() function is an inbuilt function in PHP which is used to remove objects from the storage.
Syntax:
void SplObjectStorage::detach($obj)
Parameters: This function accepts a single parameter $obj which specifies the object to be remove from the storage.
Return Value: This function does not return any value.
Below programs illustrate the SplObjectStorage::detach() function in PHP:
Program 1:
<?php // Creating class $obj = new StdClass; // Create an empty storage class $str = new SplObjectStorage(); // Add some object $str ->attach( $obj , "neveropen" ); // Print result before detaching var_dump( count ( $str )); // Detaching object $str ->detach( $obj ); // Print result after detach var_dump( count ( $str )); ?> |
int(1) int(0)
Program 2:
<?php // Creating class $obj1 = new StdClass; $obj2 = new StdClass; $obj3 = new StdClass; // Create an empty storage class $str = new SplObjectStorage(); // Add some object $str ->attach( $obj1 , "neveropen" ); $str ->attach( $obj2 ); $str ->attach( $obj3 , "GFG" ); // Print result before detaching var_dump( count ( $str )); // Detaching object $str ->detach( $obj1 ); // Print result after detach first object var_dump( count ( $str )); // Detaching object $str ->detach( $obj3 ); // Print result after detach second object var_dump( count ( $str )); ?> |
int(3) int(2) int(1)
Reference: https://www.php.net/manual/en/splobjectstorage.detach.php