Class File

Convenience class for reading, writing and appending to files.

Package: Cake\Utility
Copyright: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
License: MIT License
Location: Cake/Utility/File.php

Properties summary

  • $Folder public
    Folder object of the file
  • $handle public
    resource
    Holds the file handler resource if the file is opened
  • $info public
    array
    File info
  • $lock public
    boolean
    Enable locking for file reading and writing
  • $name public
    string
    File name
  • $path public
    mixed
    Path property

Method Summary

  • __construct() public
    Constructor
  • __destruct() public
    Closes the current file if it is opened
  • append() public
    Append given data string to this file.
  • 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

    Get the mime type of the file. Uses the finfo extension if its 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()source public

__construct( string $path , boolean $create false , integer $mode 0755 )

Constructor

Parameters

string $path
Path to file
boolean $create optional false
Create file if it does not exist (if true)
integer $mode optional 0755
Mode to apply to the folder holding the file

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File

__destruct()source public

__destruct( )

Closes the current file if it is opened

append()source public

append( string $data , string $force false )

Append given data string to this file.

Parameters

string $data
Data to write
string $force optional false
Force the file to open

Returns

boolean
Success

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::append

clearStatCache()source public

clearStatCache( boolean $all false )

Clear PHP's internal stat cache

For 5.3 onwards it's possible to clear cache for just a single file. Passing true will clear all the stat cache.

Parameters

boolean $all optional false
Clear all cache or not

close()source public

close( )

Closes the current file if it is opened.

Returns

boolean
True if closing was successful or file was already closed, otherwise false

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::close

copy()source public

copy( string $dest , boolean $overwrite true )

Copy the File to $dest

Parameters

string $dest
Destination for the copy
boolean $overwrite optional true
Overwrite $dest if exists

Returns

boolean
Success

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::copy

create()source public

create( )

Creates the file.

Returns

boolean
Success

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::create

delete()source public

delete( )

Deletes the file.

Returns

boolean
Success

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::delete

executable()source public

executable( )

Returns true if the File is executable.

Returns

boolean
True if it's executable, false otherwise

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::executable

exists()source public

exists( )

Returns true if the file exists.

Returns

boolean
True if it exists, false otherwise

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::exists

ext()source public

ext( )

Returns the file extension.

Returns

string
The file extension

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::ext

folder()source public

folder( )

Returns the current folder.

Returns

Folder
Current folder

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::Folder

group()source public

group( )

Returns the file's group.

Returns

integer|false
The file group, or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::group

info()source public

info( )

Returns the file info as an array with the following keys:

  • dirname
  • basename
  • extension
  • filename
  • filesize
  • mime

Returns

array
File information.

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::info

lastAccess()source public

lastAccess( )

Returns last access time.

Returns

integer|false
Timestamp of last access time, or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::lastAccess

lastChange()source public

lastChange( )

Returns last modified time.

Returns

integer|false
Timestamp of last modification, or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::lastChange

md5()source public

md5( integer|boolean $maxsize 5 )

Get md5 Checksum of file with previous check of Filesize

Parameters

integer|boolean $maxsize optional 5
in MB or true to force

Returns

string|false
md5 Checksum See md5_file(), or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::md5

mime()source public

mime( )

Get the mime type of the file. Uses the finfo extension if its available, otherwise falls back to mime_content_type

Returns

false|string
The mimetype of the file, or false if reading fails.

name()source public

name( )

Returns the file name without extension.

Returns

string
The file name without extension.

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::name

offset()source public

offset( integer|boolean $offset false , integer $seek SEEK_SET )

Sets or gets the offset for the currently opened file.

Parameters

integer|boolean $offset optional false
The $offset in bytes to seek. If set to false then the current offset is returned.
integer $seek optional SEEK_SET
PHP Constant SEEK_SET | SEEK_CUR | SEEK_END determining what the $offset is relative to

Returns

mixed
True on success, false on failure (set mode), false on failure or integer offset on success (get mode)

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::offset

open()source public

open( string $mode 'r' , boolean $force false )

Opens the current file with a given $mode

Parameters

string $mode optional 'r'
A valid 'fopen' mode string (r|w|a ...)
boolean $force optional false
If true then the file will be re-opened even if its already opened, otherwise it won't

Returns

boolean
True on success, false on failure

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::open

owner()source public

owner( )

Returns the file's owner.

Returns

integer|false
The file owner, or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::owner

perms()source public

perms( )

Returns the "chmod" (permissions) of the file.

Returns

string|false
Permissions for the file, or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::perms

prepare()source public static

prepare( string $data , boolean $forceWindows false )

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.
boolean $forceWindows optional false
If true forces usage Windows newline string.

Returns

string
The with converted line endings.

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::prepare

pwd()source public

pwd( )

Returns the full path of the file.

Returns

string
Full path to the file

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::pwd

read()source public

read( string $bytes false , string $mode 'rb' , boolean $force false )

Return the contents of this file as a string.

Parameters

string $bytes optional false
where to start
string $mode optional 'rb'
A fread compatible mode.
boolean $force optional false
If true then the file will be re-opened even if its already opened, otherwise it won't

Returns

mixed
string on success, false on failure

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::read

readable()source public

readable( )

Returns true if the file is readable.

Returns

boolean
True if file is readable, false otherwise

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::readable

replaceText()source public

replaceText( string|array $search , string|array $replace )

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

boolean
Success

safe()source public

safe( string $name null , string $ext null )

Makes file name safe for saving

Parameters

string $name optional null
The name of the file to make safe if different from $this->name
string $ext optional null
The name of the extension to make safe if different from $this->ext

Returns

string
ext The extension of the file

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::safe

size()source public

size( )

Returns the file size

Returns

integer|false
Size of the file in bytes, or false in case of an error

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::size

writable()source public

writable( )

Returns true if the file is writable.

Returns

boolean
True if it's writable, false otherwise

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::writable

write()source public

write( string $data , string $mode 'w' , boolean $force false )

Write given data to this file.

Parameters

string $data
Data to write to this File.
string $mode optional 'w'
Mode of writing. See fwrite().
boolean $force optional false
Force the file to open

Returns

boolean
Success

Link

https://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#File::write

Properties detail

$handlesource

public resource

Holds the file handler resource if the file is opened

null

$infosource

public array

File info

array()

$locksource

public boolean

Enable locking for file reading and writing

null

$namesource

public string

File name

null

$pathsource

public mixed

Path property

Current file's absolute path

null

© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.10/class-File.html