Class File
Convenience class for reading, writing and appending to files.
Property Summary
-
$Folder public
Cake\Filesystem\Folder
Folder object of the file
-
$handle public
resource|null
Holds the file handler resource if the file is opened
-
$info public
array
File info
-
$lock public
bool|null
Enable locking for file reading and writing
-
$name public
string
File name
-
$path public
string|null
Path property
Method Summary
-
__construct() public
Constructor
-
__destruct() public
Closes the current file if it is opened
-
_basename() protected static
Returns the file basename. simulate the php basename() for multibyte (mb_basename).
-
append() public
Append given data string to this file.
-
clearStatCache() public
Clear PHP's internal stat cache
-
close() public
Closes the current file if it is opened.
-
copy() public
Copy the File to $dest
-
create() public
Creates the file.
-
delete() public
Deletes the file.
-
executable() public
Returns true if the File is executable.
-
exists() public
Returns true if the file exists.
-
ext() public
Returns the file extension.
-
folder() public
Returns the current folder.
-
group() public
Returns the file's group.
-
info() public
Returns the file info as an array with the following keys:
-
lastAccess() public
Returns last access time.
-
lastChange() public
Returns last modified time.
-
md5() public
Get md5 Checksum of file with previous check of Filesize
-
mime() public
Gets the mime type of the file. Uses the finfo extension if it's available, otherwise falls back to mime_content_type().
-
name() public
Returns the file name without extension.
-
offset() public
Sets or gets the offset for the currently opened file.
-
open() public
Opens the current file with a given $mode
-
owner() public
Returns the file's owner.
-
perms() public
Returns the "chmod" (permissions) of the file.
-
prepare() public static
Prepares an ASCII string for writing. Converts line endings to the correct terminator for the current platform. If Windows, "\r\n" will be used, all other platforms will use "\n"
-
pwd() public
Returns the full path of the file.
-
read() public
Return the contents of this file as a string.
-
readable() public
Returns true if the file is readable.
-
replaceText() public
Searches for a given text and replaces the text if found.
-
safe() public
Makes file name safe for saving
-
size() public
Returns the file size
-
writable() public
Returns true if the file is writable.
-
write() public
Write given data to this file.
Method Detail
__construct() ¶ public
__construct(string $path, bool $create = false, int $mode = 0755)
Constructor
Parameters
-
string
$path Path to file
-
bool
$create optional Create file if it does not exist (if true)
-
int
$mode optional Mode to apply to the folder holding the file
Links
_basename() ¶ protected static
_basename(string $path, string|null $ext = null): string
Returns the file basename. simulate the php basename() for multibyte (mb_basename).
Parameters
-
string
$path Path to file
-
string|null
$ext optional The name of the extension
Returns
string
append() ¶ public
append(string $data, bool $force = false): bool
Append given data string to this file.
Parameters
-
string
$data Data to write
-
bool
$force optional Force the file to open
Returns
bool
clearStatCache() ¶ public
clearStatCache(bool $all = false): void
Clear PHP's internal stat cache
Parameters
-
bool
$all optional Clear all cache or not. Passing false will clear the stat cache for the current path only.
Returns
void
copy() ¶ public
copy(string $dest, bool $overwrite = true): bool
Copy the File to $dest
Parameters
-
string
$dest Destination for the copy
-
bool
$overwrite optional Overwrite $dest if exists
Returns
bool
folder() ¶ public
folder(): Cake\Filesystem\Folder
Returns the current folder.
Returns
Cake\Filesystem\Folder
info() ¶ public
info(): array
Returns the file info as an array with the following keys:
- dirname
- basename
- extension
- filename
- filesize
- mime
Returns
array
md5() ¶ public
md5(int|bool $maxsize = 5): string|false
Get md5 Checksum of file with previous check of Filesize
Parameters
-
int|bool
$maxsize optional in MB or true to force
Returns
string|false
mime() ¶ public
mime(): false|string
Gets the mime type of the file. Uses the finfo extension if it's available, otherwise falls back to mime_content_type().
Returns
false|string
offset() ¶ public
offset(int|bool $offset = false, int $seek = SEEK_SET): int|bool
Sets or gets the offset for the currently opened file.
Parameters
-
int|bool
$offset optional The $offset in bytes to seek. If set to false then the current offset is returned.
-
int
$seek optional PHP Constant SEEK_SET | SEEK_CUR | SEEK_END determining what the $offset is relative to
Returns
int|bool
open() ¶ public
open(string $mode = 'r', bool $force = false): bool
Opens the current file with a given $mode
Parameters
-
string
$mode optional A valid 'fopen' mode string (r|w|a ...)
-
bool
$force optional If true then the file will be re-opened even if its already opened, otherwise it won't
Returns
bool
perms() ¶ public
perms(): string|false
Returns the "chmod" (permissions) of the file.
Returns
string|false
prepare() ¶ public static
prepare(string $data, bool $forceWindows = false): string
Prepares an ASCII string for writing. Converts line endings to the correct terminator for the current platform. If Windows, "\r\n" will be used, all other platforms will use "\n"
Parameters
-
string
$data Data to prepare for writing.
-
bool
$forceWindows optional If true forces Windows new line string.
Returns
string
read() ¶ public
read(string|bool $bytes = false, string $mode = 'rb', bool $force = false): string|false
Return the contents of this file as a string.
Parameters
-
string|bool
$bytes optional where to start
-
string
$mode optional A
fread
compatible mode.-
bool
$force optional If true then the file will be re-opened even if its already opened, otherwise it won't
Returns
string|false
replaceText() ¶ public
replaceText(string|array $search, string|array $replace): bool
Searches for a given text and replaces the text if found.
Parameters
-
string|array
$search Text(s) to search for.
-
string|array
$replace Text(s) to replace with.
Returns
bool
safe() ¶ public
safe(string|null $name = null, string|null $ext = null): string
Makes file name safe for saving
Parameters
-
string|null
$name optional The name of the file to make safe if different from $this->name
-
string|null
$ext optional The name of the extension to make safe if different from $this->ext
Returns
string
write() ¶ public
write(string $data, string $mode = 'w', bool $force = false): bool
Write given data to this file.
Parameters
-
string
$data Data to write to this File.
-
string
$mode optional Mode of writing. {@link https://secure.php.net/fwrite See fwrite()}.
-
bool
$force optional Force the file to open
Returns
bool