add temporary file managment

This commit is contained in:
Robin Appelman 2012-02-28 11:16:19 +01:00
parent 76d7ce4b52
commit 77b51f03e3
2 changed files with 28 additions and 0 deletions

View File

@ -313,6 +313,9 @@ class OC{
// Last part: connect some hooks
OC_HOOK::connect('OC_User', 'post_createUser', 'OC_Connector_Sabre_Principal', 'addPrincipal');
OC_HOOK::connect('OC_User', 'post_deleteUser', 'OC_Connector_Sabre_Principal', 'deletePrincipal');
//make sure temporary files are cleaned up
register_shutdown_function(array('OC_Helper','cleanTmp'));
}
}

View File

@ -26,6 +26,7 @@
*/
class OC_Helper {
private static $mimetypes=array();
private static $tmpFiles=array();
/**
* @brief Creates an url
@ -415,4 +416,28 @@ class OC_Helper {
}
return $count;
}
/**
* create a temporary file with an unique filename
* @param string postfix
* @return string
*
* temporary files are automatically cleaned up after the script is finished
*/
public static function tmpFile($postfix=''){
$file=tempnam(get_temp_dir(),'OC_TMP_').$postfix;
self::$tmpFiles[]=$file;
return $file;
}
/**
* remove all files created by self::tmpFile
*/
public static function cleanTmp(){
foreach(self::$tmpFiles as $file){
if(file_exists($file)){
unlink($file);
}
}
}
}