$files->tempDir() method

Return a new temporary directory/path ready to use for files

  • The temporary directory will be automatically removed at the end of the request.
  • Temporary directories are not http accessible.
  • If you call this with the same non-empty $name argument more than once in the same request, the same WireTempDir instance will be returned.

Example

$tempDir = $files->tempDir(); 
$path = $tempDir->get();
file_put_contents($path . 'some-file.txt', 'Hello world'); 

Usage

// basic usage
$wireTempDir = $files->tempDir();

// usage with all arguments
$wireTempDir = $files->tempDir($name = '', $options = []);

Arguments

NameType(s)Description
name (optional)Object, string

Any one of the following: (default='')

  • Omit this argument for auto-generated name, 3.0.178+
  • Name/word that you specify using fieldName format, i.e. [_a-zA-Z0-9].
  • Object instance that needs the temp dir.
options (optional)array, int

Deprecated argument. Call WireTempDir methods if you need more options.

Return value

WireTempDir

Returns a WireTempDir instance. If you typecast return value to a string, it is the temp dir path (with trailing slash).


$files methods and properties

API reference based on ProcessWire core version 3.0.248

Latest news

  • ProcessWire Weekly #581
    The 581st issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community. Modules, sites, and more. Read on!
    Weekly.pw / 28 June 2025
  • New ProcessWire admin redesign
    When you upgrade to ProcessWire 3.0.248 or newer (currently the dev branch), you’ll immediately notice something new and beautiful…
    Blog / 9 May 2025
  • Subscribe to weekly ProcessWire news

“To Drupal, or to ProcessWire? The million dollar choice. We decided to make an early switch to PW. And in retrospect, ProcessWire was probably the best decision we made. Thanks are due to ProcessWire and the amazing system and set of modules that are in place.” —Unni Krishnan, Founder of PigtailPundits