Is there any way to ensure that a particular code is executed when a session ends e.g to remove temporary files og database entries ? similar to the Session_OnEnd in the global.asa file in an asp application ?
PHP does handle it's own garbage colleciton. What I was getting at was the ability to save uploaded files to a custom temp directory (not php tmp) but delete those files when the session was destroyed.
I'm getting around this buy actually loading the file contents into the session. makes for a large session file but that is the only problem i've had so far.
If I'm not mistaken PHP automatically handles garbage collection and cleanup when a session ends. That is provided you haven't declared any custom session handlers using session_set_save_handler().
I think there is no direct way in PHP. This can be done using Global.aspx file in asp.net.
For PHP work around, we can keep the list of created sessiond and then checking for the each sessions if they are available. If any session is found destroyed, we can delete the uploaded files by that session. However, this adds additional efforts managing the session tables along with the list of uploaded files per session.