Create a directory that is writable to ProcessWire and uses the defined $config chmod settings
Unlike PHP's mkdir()
function, this function manages the read/write mode consistent with ProcessWire's
setting $config->chmodDir
, and it can create directories recursively. Meaning, if you want to create directory /a/b/c/ and directory /a/ doesn't yet exist, this method will take care of creating /a/, /a/b/, and /a/b/c/.
The $recursive
and $chmod
arguments may optionally be swapped (since 3.0.34).
Example
// Create a new directory in ProcessWire's cache dir
if($files->mkdir($config->paths->cache . 'foo-bar/')) {
// directory created: /site/assets/cache/foo-bar/
}
Usage
// basic usage
$bool = $files->mkdir(string $path);
// usage with all arguments
$bool = $files->mkdir(string $path, $recursive = false, $chmod = null);
Arguments
Name | Type(s) | Description |
---|---|---|
path | string | Directory you want to create |
recursive (optional) | bool, string | If set to true, all directories will be created as needed to reach the end. |
chmod (optional) | string, null, bool | Optional mode to set directory to (default: $config->chmodDir), format must be a string i.e. "0755"
If omitted, then ProcessWire's |
Return value
bool
True on success, false on failure
API reference based on ProcessWire core version 3.0.236