$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.


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


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

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


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


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.185

Twitter updates

  • ProcessWire 3.0.185 (dev) core updates, plus new Session Allow module— More
    17 September 2021
  • Three new ProcessWire Textformatter modules: Find/Replace, Markdown in Markup, and Emoji— More
    3 September 2021
  • This week we have a new master version released after a year in the making. With nearly 40 pull requests, hundreds of new additions and more than 100 issue reports resolved, this new version has a ton of great new stuff— More
    27 August 2021

Latest news

  • ProcessWire Weekly #388
    In the 388th issue of ProcessWire Weekly we'll check out the latest core update, introduce two new third party modules, and more. Read on!
    Weekly.pw / 16 October 2021
  • ProcessWire 3.0.184 new master/main version
    This week we have a new master/main version released after a full year in the making. As you might imagine, this new version has a ton of great new stuff and we’ll try to cover much of it here.
    Blog / 27 August 2021
  • Subscribe to weekly ProcessWire news

“We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK