genRndTempnam() public static method

Returns random temporary file name
public static genRndTempnam ( string $dir = null, string $prefix = 'php' ) : string
$dir string Directory
$prefix string Prefix
return string Path
Beispiel #1
0
 /**
  * Generates closure tempnam handler
  * @param  $dir
  * @param  $prefix
  * @param  $cb
  * @param  $tries
  */
 protected static function tempnamHandler($dir, $prefix, $cb, &$tries)
 {
     $cb = CallbackWrapper::forceWrap($cb);
     if (++$tries >= 3) {
         call_user_func($cb, false);
         return;
     }
     $path = FileSystem::genRndTempnam($dir, $prefix);
     FileSystem::open($path, 'x+!', function ($file) use($dir, $prefix, $cb, &$tries) {
         if (!$file) {
             static::tempnamHandler($dir, $prefix, $cb, $tries);
             return;
         }
         call_user_func($cb, $file);
     });
 }