W3cubDocs

/Laravel 8

LockableFile

class LockableFile (View source)

Properties

protected resource $handle The file resource.
protected string $path The file path.
protected bool $isLocked Indicates if the file is locked.

Methods

void __construct(string $path, string $mode)

Create a new File instance.

void ensureDirectoryExists(string $path)

Create the file's directory if necessary.

void createResource(string $path, string $mode)

Create the file resource.

string read(int|null $length = null)

Read the file contents.

int size()

Get the file size.

string write(string $contents)

Write to the file.

$this truncate()

Truncate the file.

$this getSharedLock(bool $block = false)

Get a shared lock on the file.

bool getExclusiveLock(bool $block = false)

Get an exclusive lock on the file.

$this releaseLock()

Release the lock on the file.

bool close()

Close the file.

Details

void __construct(string $path, string $mode)

Create a new File instance.

Parameters

string $path
string $mode

Return Value

void

protected void ensureDirectoryExists(string $path)

Create the file's directory if necessary.

Parameters

string $path

Return Value

void

protected void createResource(string $path, string $mode)

Create the file resource.

Parameters

string $path
string $mode

Return Value

void

string read(int|null $length = null)

Read the file contents.

Parameters

int|null $length

Return Value

string

int size()

Get the file size.

Return Value

int

string write(string $contents)

Write to the file.

Parameters

string $contents

Return Value

string

$this truncate()

Truncate the file.

Return Value

$this

$this getSharedLock(bool $block = false)

Get a shared lock on the file.

Parameters

bool $block

Return Value

$this

bool getExclusiveLock(bool $block = false)

Get an exclusive lock on the file.

Parameters

bool $block

Return Value

bool

$this releaseLock()

Release the lock on the file.

Return Value

$this

bool close()

Close the file.

Return Value

bool

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Filesystem/LockableFile.html