summaryrefslogtreecommitdiff
path: root/modules/gallery/helpers/system.php
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2011-05-06 11:48:13 -0700
committerBharat Mediratta <bharat@menalto.com>2011-05-06 11:48:13 -0700
commit80dda6f64fd26f373cc138a199652099accceb26 (patch)
treefef68945a8bb2706362ab686a45078a187fb2835 /modules/gallery/helpers/system.php
parent5d09cbff048fc2f457c8b19adb2177a12445890a (diff)
parent46da011bf69bbc4e45757feda8f0d28e91e7fb6a (diff)
Merge pull request #52 from chadparry/tempnam
Fixes #1732
Diffstat (limited to 'modules/gallery/helpers/system.php')
-rw-r--r--modules/gallery/helpers/system.php21
1 files changed, 21 insertions, 0 deletions
diff --git a/modules/gallery/helpers/system.php b/modules/gallery/helpers/system.php
index c39c7227..4110b4ed 100644
--- a/modules/gallery/helpers/system.php
+++ b/modules/gallery/helpers/system.php
@@ -40,4 +40,25 @@ class system_Core {
}
return null;
}
+
+ /**
+ * Create a file with a unique file name.
+ * This helper is similar to the built-in tempnam.
+ * It allows the caller to specify a prefix and an extension.
+ * It always places the file in TMPPATH.
+ */
+ static function temp_filename($prefix="", $extension="") {
+ do {
+ $basename = tempnam(TMPPATH, $prefix);
+ if (!$basename) {
+ return false;
+ }
+ $filename = "$basename.$extension";
+ $success = !file_exists($filename) && @rename($basename, $filename);
+ if (!$success) {
+ @unlink($basename);
+ }
+ } while (!$success);
+ return $filename;
+ }
} \ No newline at end of file