Hi all I searched the internet (probably not hard enough), and couldn't find a decent answer. I was wondering why, when calling unset on an object, it doesn't automatically call the __destruct method (if it exists) on the object. When unsetting an object, php doesn't automatically remove references to other objects, and you need to manually call the __destruct method where you can remove any references to other objects. I know there is a lot of discussion around this topic, but couldn't find a definate answer as to why this isn't the default behaviour. Any clarification would greatly be appreciated.