class Filesystem (View source)

A collection of static methods for manipulating the filesystem.

Traits

Provides extensions to this object to integrate it with standard config API methods.

Properties

static private int $file_create_mask
static private int $folder_create_mask

Methods

static Config_ForClass
config()

Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).

mixed
stat(string $name) deprecated

Get inherited config value

mixed
uninherited(string $name)

Gets the uninherited value for the given config option

$this
set_stat(string $name, mixed $value) deprecated

Update the config value for a given property

static 
makeFolder(string $folder)

Create a folder on the filesystem, recursively.

static 
removeFolder(string $folder, bool $contentsOnly = false)

Remove a directory and all subdirectories and files.

static bool
remove_folder_if_empty(string $folder, bool $recursive = true)

Remove a directory, but only if it is empty.

fixfiles() deprecated

Cleanup function to reset all the Filename fields. Visit File/fixfiles to call.

static string
folderModTime(string $folder, array $extensionList = null)

Return the most recent modification time of anything in the folder.

static bool
isAbsolute(string $filename)

Returns true if the given filename is an absolute file reference.

Details

static Config_ForClass config()

Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).

Return Value

Config_ForClass

mixed stat(string $name) deprecated

deprecated 5.0 Use ->config()->get() instead

Get inherited config value

Parameters

string $name

Return Value

mixed

mixed uninherited(string $name)

Gets the uninherited value for the given config option

Parameters

string $name

Return Value

mixed

$this set_stat(string $name, mixed $value) deprecated

deprecated 5.0 Use ->config()->set() instead

Update the config value for a given property

Parameters

string $name
mixed $value

Return Value

$this

static makeFolder(string $folder)

Create a folder on the filesystem, recursively.

Uses {@link Filesystem::$folder_create_mask} to set filesystem permissions. Use {@link Folder::findOrMake()} to create a {@link Folder} database record automatically.

Parameters

string $folder

Absolute folder path

static removeFolder(string $folder, bool $contentsOnly = false)

Remove a directory and all subdirectories and files.

Parameters

string $folder

Absolute folder path

bool $contentsOnly

If this is true then the contents of the folder will be removed but not the folder itself

static bool remove_folder_if_empty(string $folder, bool $recursive = true)

Remove a directory, but only if it is empty.

Parameters

string $folder

Absolute folder path

bool $recursive

Remove contained empty folders before attempting to remove this one

Return Value

bool

True on success, false on failure.

fixfiles() deprecated

deprecated 5.0

Cleanup function to reset all the Filename fields. Visit File/fixfiles to call.

static string folderModTime(string $folder, array $extensionList = null)

Return the most recent modification time of anything in the folder.

Parameters

string $folder

The folder, relative to the site root

array $extensionList

An option array of file extensions to limit the search to

Return Value

string

Same as filemtime() format.

static bool isAbsolute(string $filename)

Returns true if the given filename is an absolute file reference.

Works on Linux and Windows.

Parameters

string $filename

Absolute or relative filename, with or without path.

Return Value

bool