class Filesystem (View source)

Traits

Properties

static protected array $macros

The registered string macros.

from  Macroable

Methods

static void
macro(string $name, object|callable $macro)

Register a custom macro.

static void
mixin(object $mixin, bool $replace = true)

Mix another object into the class.

static bool
hasMacro(string $name)

Checks if macro is registered.

static void
flushMacros()

Flush the existing macros.

static mixed
__callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

mixed
__call(string $method, array $parameters)

Dynamically handle calls to the class.

bool
exists(string $path)

Determine if a file or directory exists.

bool
missing(string $path)

Determine if a file or directory is missing.

string
get(string $path, bool $lock = false)

Get the contents of a file.

string
sharedGet(string $path)

Get contents of a file with shared access.

mixed
getRequire(string $path, array $data = [])

Get the returned value of a file.

mixed
requireOnce(string $path, array $data = [])

Require the given file once.

lines(string $path)

Get the contents of a file one line at a time.

string
hash(string $path)

Get the MD5 hash of the file at the given path.

int|bool
put(string $path, string $contents, bool $lock = false)

Write the contents of a file.

void
replace(string $path, string $content)

Write the contents of a file, replacing it atomically if it already exists.

void
replaceInFile(array|string $search, array|string $replace, string $path)

Replace a given string within a given file.

int
prepend(string $path, string $data)

Prepend to a file.

int
append(string $path, string $data)

Append to a file.

mixed
chmod(string $path, int|null $mode = null)

Get or set UNIX mode of a file or directory.

bool
delete(string|array $paths)

Delete the file at a given path.

bool
move(string $path, string $target)

Move a file to a new location.

bool
copy(string $path, string $target)

Copy a file to a new location.

void
link(string $target, string $link)

Create a symlink to the target file or directory. On Windows, a hard link is created if the target is a file.

void
relativeLink(string $target, string $link)

Create a relative symlink to the target file or directory.

string
name(string $path)

Extract the file name from a file path.

string
basename(string $path)

Extract the trailing name component from a file path.

string
dirname(string $path)

Extract the parent directory from a file path.

string
extension(string $path)

Extract the file extension from a file path.

string|null
guessExtension(string $path)

Guess the file extension from the mime-type of a given file.

string
type(string $path)

Get the file type of a given file.

string|false
mimeType(string $path)

Get the mime-type of a given file.

int
size(string $path)

Get the file size of a given file.

int
lastModified(string $path)

Get the file's last modification time.

bool
isDirectory(string $directory)

Determine if the given path is a directory.

bool
isReadable(string $path)

Determine if the given path is readable.

bool
isWritable(string $path)

Determine if the given path is writable.

bool
isFile(string $file)

Determine if the given path is a file.

array
glob(string $pattern, int $flags = 0)

Find path names matching a given pattern.

SplFileInfo[]
files(string $directory, bool $hidden = false)

Get an array of all files in a directory.

SplFileInfo[]
allFiles(string $directory, bool $hidden = false)

Get all of the files from the given directory (recursive).

array
directories(string $directory)

Get all of the directories within a given directory.

void
ensureDirectoryExists(string $path, int $mode = 0755, bool $recursive = true)

Ensure a directory exists.

bool
makeDirectory(string $path, int $mode = 0755, bool $recursive = false, bool $force = false)

Create a directory.

bool
moveDirectory(string $from, string $to, bool $overwrite = false)

Move a directory.

bool
copyDirectory(string $directory, string $destination, int|null $options = null)

Copy a directory from one location to another.

bool
deleteDirectory(string $directory, bool $preserve = false)

Recursively delete a directory.

bool
deleteDirectories(string $directory)

Remove all of the directories within a given directory.

bool
cleanDirectory(string $directory)

Empty the specified directory of all files and folders.

Details

static void macro(string $name, object|callable $macro)

Register a custom macro.

Parameters

string $name
object|callable $macro

Return Value

void

static void mixin(object $mixin, bool $replace = true)

Mix another object into the class.

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

static void flushMacros()

Flush the existing macros.

Return Value

void

static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

bool exists(string $path)

Determine if a file or directory exists.

Parameters

string $path

Return Value

bool

bool missing(string $path)

Determine if a file or directory is missing.

Parameters

string $path

Return Value

bool

string get(string $path, bool $lock = false)

Get the contents of a file.

Parameters

string $path
bool $lock

Return Value

string

Exceptions

FileNotFoundException

string sharedGet(string $path)

Get contents of a file with shared access.

Parameters

string $path

Return Value

string

mixed getRequire(string $path, array $data = [])

Get the returned value of a file.

Parameters

string $path
array $data

Return Value

mixed

Exceptions

FileNotFoundException

mixed requireOnce(string $path, array $data = [])

Require the given file once.

Parameters

string $path
array $data

Return Value

mixed

Exceptions

FileNotFoundException

LazyCollection lines(string $path)

Get the contents of a file one line at a time.

Parameters

string $path

Return Value

LazyCollection

Exceptions

FileNotFoundException

string hash(string $path)

Get the MD5 hash of the file at the given path.

Parameters

string $path

Return Value

string

int|bool put(string $path, string $contents, bool $lock = false)

Write the contents of a file.

Parameters

string $path
string $contents
bool $lock

Return Value

int|bool

void replace(string $path, string $content)

Write the contents of a file, replacing it atomically if it already exists.

Parameters

string $path
string $content

Return Value

void

void replaceInFile(array|string $search, array|string $replace, string $path)

Replace a given string within a given file.

Parameters

array|string $search
array|string $replace
string $path

Return Value

void

int prepend(string $path, string $data)

Prepend to a file.

Parameters

string $path
string $data

Return Value

int

int append(string $path, string $data)

Append to a file.

Parameters

string $path
string $data

Return Value

int

mixed chmod(string $path, int|null $mode = null)

Get or set UNIX mode of a file or directory.

Parameters

string $path
int|null $mode

Return Value

mixed

bool delete(string|array $paths)

Delete the file at a given path.

Parameters

string|array $paths

Return Value

bool

bool move(string $path, string $target)

Move a file to a new location.

Parameters

string $path
string $target

Return Value

bool

bool copy(string $path, string $target)

Copy a file to a new location.

Parameters

string $path
string $target

Return Value

bool

Create a symlink to the target file or directory. On Windows, a hard link is created if the target is a file.

Parameters

string $target
string $link

Return Value

void

Create a relative symlink to the target file or directory.

Parameters

string $target
string $link

Return Value

void

Exceptions

RuntimeException

string name(string $path)

Extract the file name from a file path.

Parameters

string $path

Return Value

string

string basename(string $path)

Extract the trailing name component from a file path.

Parameters

string $path

Return Value

string

string dirname(string $path)

Extract the parent directory from a file path.

Parameters

string $path

Return Value

string

string extension(string $path)

Extract the file extension from a file path.

Parameters

string $path

Return Value

string

string|null guessExtension(string $path)

Guess the file extension from the mime-type of a given file.

Parameters

string $path

Return Value

string|null

Exceptions

RuntimeException

string type(string $path)

Get the file type of a given file.

Parameters

string $path

Return Value

string

string|false mimeType(string $path)

Get the mime-type of a given file.

Parameters

string $path

Return Value

string|false

int size(string $path)

Get the file size of a given file.

Parameters

string $path

Return Value

int

int lastModified(string $path)

Get the file's last modification time.

Parameters

string $path

Return Value

int

bool isDirectory(string $directory)

Determine if the given path is a directory.

Parameters

string $directory

Return Value

bool

bool isReadable(string $path)

Determine if the given path is readable.

Parameters

string $path

Return Value

bool

bool isWritable(string $path)

Determine if the given path is writable.

Parameters

string $path

Return Value

bool

bool isFile(string $file)

Determine if the given path is a file.

Parameters

string $file

Return Value

bool

array glob(string $pattern, int $flags = 0)

Find path names matching a given pattern.

Parameters

string $pattern
int $flags

Return Value

array

SplFileInfo[] files(string $directory, bool $hidden = false)

Get an array of all files in a directory.

Parameters

string $directory
bool $hidden

Return Value

SplFileInfo[]

SplFileInfo[] allFiles(string $directory, bool $hidden = false)

Get all of the files from the given directory (recursive).

Parameters

string $directory
bool $hidden

Return Value

SplFileInfo[]

array directories(string $directory)

Get all of the directories within a given directory.

Parameters

string $directory

Return Value

array

void ensureDirectoryExists(string $path, int $mode = 0755, bool $recursive = true)

Ensure a directory exists.

Parameters

string $path
int $mode
bool $recursive

Return Value

void

bool makeDirectory(string $path, int $mode = 0755, bool $recursive = false, bool $force = false)

Create a directory.

Parameters

string $path
int $mode
bool $recursive
bool $force

Return Value

bool

bool moveDirectory(string $from, string $to, bool $overwrite = false)

Move a directory.

Parameters

string $from
string $to
bool $overwrite

Return Value

bool

bool copyDirectory(string $directory, string $destination, int|null $options = null)

Copy a directory from one location to another.

Parameters

string $directory
string $destination
int|null $options

Return Value

bool

bool deleteDirectory(string $directory, bool $preserve = false)

Recursively delete a directory.

The directory itself may be optionally preserved.

Parameters

string $directory
bool $preserve

Return Value

bool

bool deleteDirectories(string $directory)

Remove all of the directories within a given directory.

Parameters

string $directory

Return Value

bool

bool cleanDirectory(string $directory)

Empty the specified directory of all files and folders.

Parameters

string $directory

Return Value

bool

Laravel Cloud is the best place to deploy Laravel, Nuxt, Express, Hono, Node.js, Bun, Go, Flask, Python, and more, with dedicated infrastructure available on AWS through Laravel Private Cloud.