CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (GitHub)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • Slack
    • Paid Support
CakePHP

C CakePHP 2.1 API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 2.1
      • 4.2
      • 4.1
      • 4.0
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Packages

  • Cake
    • Cache
      • Engine
    • Configure
    • Console
      • Command
        • Task
    • Controller
      • Component
        • Acl
        • Auth
    • Core
    • Error
    • Event
    • I18n
    • Log
      • Engine
    • Model
      • Behavior
      • Datasource
        • Database
        • Session
    • Network
      • Email
      • Http
    • Routing
      • Route
    • TestSuite
      • Coverage
      • Fixture
      • Reporter
    • Utility
    • View
      • Helper

Classes

  • CakeNumber
  • CakeTime
  • ClassRegistry
  • Debugger
  • File
  • Folder
  • Inflector
  • ObjectCollection
  • Sanitize
  • Security
  • Set
  • String
  • Validation
  • Xml

Class Folder

Folder structure browser, lists folders and files. Provides an Object interface for Common directory related tasks.

Package: Cake\Utility
Copyright: Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
License: License (http://www.opensource.org/licenses/mit-license.php)
Location: Cake/Utility/Folder.php

Properties summary

  • $_directories protected
    array
    Holds array of complete directory paths.
  • $_errors protected
    array
    Holds errors from last method.
  • $_files protected
    array
    Holds array of complete file paths.
  • $_messages protected
    array
    Holds messages from last method.
  • $mode public
    integer
    Mode to be used on create. Does nothing on windows platforms.
  • $path public
    string
    Path to Folder.
  • $sort public
    boolean

    Sortedness. Whether or not list results should be sorted by name.

Method Summary

  • __construct() public
    Constructor.
  • _findRecursive() protected
    Private helper function for findRecursive.
  • addPathElement() public static
    Returns $path with $element added, with correct slash in-between.
  • cd() public
    Change directory to $path.
  • chmod() public
    Change the mode on a directory structure recursively. This includes changing the mode on files as well.
  • copy() public
    Recursive directory copy.
  • correctSlashFor() public static
    Returns a correct set of slashes for given $path. (\ for Windows paths and / for other paths.)
  • create() public

    Create a directory structure recursively. Can be used to create deep path structures like /foo/bar/baz/shoe/horn

  • delete() public
    Recursively Remove directories if the system allows.
  • dirsize() public
    Returns the size in bytes of this Folder and its contents.
  • errors() public
    get error from latest method
  • find() public
    Returns an array of all matching files in current directory.
  • findRecursive() public
    Returns an array of all matching files in and below current directory.
  • inCakePath() public
    Returns true if the File is in a given CakePath.
  • inPath() public
    Returns true if the File is in given path.
  • isAbsolute() public static
    Returns true if given $path is an absolute path.
  • isSlashTerm() public static
    Returns true if given $path ends in a slash (i.e. is slash-terminated).
  • isWindowsPath() public static
    Returns true if given $path is a Windows path.
  • messages() public
    get messages from latest method
  • move() public
    Recursive directory move.
  • normalizePath() public static
    Returns a correct set of slashes for given $path. (\ for Windows paths and / for other paths.)
  • pwd() public
    Return current path.
  • read() public

    Returns an array of the contents of the current directory. The returned array holds two arrays: One of directories and one of files.

  • realpath() public
    Get the real path (taking ".." and such into account)
  • slashTerm() public static
    Returns $path with added terminating slash (corrected for Windows or other OS).
  • tree() public
    Returns an array of nested directories and files in each directory

Method Detail

__construct() public ¶

__construct( string $path = false , boolean $create = false , mixed $mode = false )

Constructor.

Parameters
string $path optional false
Path to folder
boolean $create optional false
Create folder if not found
mixed $mode optional false
Mode (CHMOD) to apply to created folder, false to ignore
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder

_findRecursive() protected ¶

_findRecursive( string $pattern , boolean $sort = false )

Private helper function for findRecursive.

Parameters
string $pattern
Pattern to match against
boolean $sort optional false
Whether results should be sorted.
Returns
array
Files matching pattern

addPathElement() public static ¶

addPathElement( string $path , string $element )

Returns $path with $element added, with correct slash in-between.

Parameters
string $path
Path
string $element
Element to and at end of path
Returns
string
Combined path
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::addPathElement

cd() public ¶

cd( string $path )

Change directory to $path.

Parameters
string $path
Path to the directory to change to
Returns
string
The new path. Returns false on failure
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::cd

chmod() public ¶

chmod( string $path , integer $mode = false , boolean $recursive = true , array $exceptions = array() )

Change the mode on a directory structure recursively. This includes changing the mode on files as well.

Parameters
string $path
The path to chmod
integer $mode optional false
octal value 0755
boolean $recursive optional true
chmod recursively, set to false to only change the current directory.
array $exceptions optional array()
array of files, directories to skip
Returns
boolean
Returns TRUE on success, FALSE on failure
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::chmod

copy() public ¶

copy( mixed $options = array() )

Recursive directory copy.

Options

  • to The directory to copy to.
  • from The directory to copy from, this will cause a cd() to occur, changing the results of pwd().
  • mode The mode to copy the files/directories with.
  • skip Files/directories to skip.
Parameters
mixed $options optional array()
Either an array of options (see above) or a string of the destination directory.
Returns
boolean
Success
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::copy

correctSlashFor() public static ¶

correctSlashFor( string $path )

Returns a correct set of slashes for given $path. (\ for Windows paths and / for other paths.)

Parameters
string $path
Path to check
Returns
string
Set of slashes ("\" or "/")
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::correctSlashFor

create() public ¶

create( string $pathname , integer $mode = false )

Create a directory structure recursively. Can be used to create deep path structures like /foo/bar/baz/shoe/horn

Parameters
string $pathname
The directory structure to create
integer $mode optional false
octal value 0755
Returns
boolean
Returns TRUE on success, FALSE on failure
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::create

delete() public ¶

delete( string $path = null )

Recursively Remove directories if the system allows.

Parameters
string $path optional null
Path of directory to delete
Returns
boolean
Success
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::delete

dirsize() public ¶

dirsize( )

Returns the size in bytes of this Folder and its contents.

Returns
integer
size in bytes of current folder
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::dirsize

errors() public ¶

errors( )

get error from latest method

Returns
array
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::errors

find() public ¶

find( string $regexpPattern = '.*' , boolean $sort = false )

Returns an array of all matching files in current directory.

Parameters
string $regexpPattern optional '.*'
Preg_match pattern (Defaults to: .*)
boolean $sort optional false
Whether results should be sorted.
Returns
array
Files that match given pattern
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::find

findRecursive() public ¶

findRecursive( string $pattern = '.*' , boolean $sort = false )

Returns an array of all matching files in and below current directory.

Parameters
string $pattern optional '.*'
Preg_match pattern (Defaults to: .*)
boolean $sort optional false
Whether results should be sorted.
Returns
array
Files matching $pattern
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::findRecursive

inCakePath() public ¶

inCakePath( string $path = '' )

Returns true if the File is in a given CakePath.

Parameters
string $path optional ''
The path to check.
Returns
boolean
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::inCakePath

inPath() public ¶

inPath( string $path = '' , boolean $reverse = false )

Returns true if the File is in given path.

Parameters
string $path optional ''
The path to check that the current pwd() resides with in.
boolean $reverse optional false
Reverse the search, check that pwd() resides within $path.
Returns
boolean
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::inPath

isAbsolute() public static ¶

isAbsolute( string $path )

Returns true if given $path is an absolute path.

Parameters
string $path
Path to check
Returns
boolean
true if path is absolute.
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::isAbsolute

isSlashTerm() public static ¶

isSlashTerm( string $path )

Returns true if given $path ends in a slash (i.e. is slash-terminated).

Parameters
string $path
Path to check
Returns
boolean
true if path ends with slash, false otherwise
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::isSlashTerm

isWindowsPath() public static ¶

isWindowsPath( string $path )

Returns true if given $path is a Windows path.

Parameters
string $path
Path to check
Returns
boolean
true if windows path, false otherwise
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::isWindowsPath

messages() public ¶

messages( )

get messages from latest method

Returns
array
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::messages

move() public ¶

move( array $options )

Recursive directory move.

Options

  • to The directory to copy to.
  • from The directory to copy from, this will cause a cd() to occur, changing the results of pwd().
  • chmod The mode to copy the files/directories with.
  • skip Files/directories to skip.
Parameters
array $options
(to, from, chmod, skip)
Returns
boolean
Success
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::move

normalizePath() public static ¶

normalizePath( string $path )

Returns a correct set of slashes for given $path. (\ for Windows paths and / for other paths.)

Parameters
string $path
Path to check
Returns
string
Set of slashes ("\" or "/")
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::normalizePath

pwd() public ¶

pwd( )

Return current path.

Returns
string
Current path
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::pwd

read() public ¶

read( boolean $sort = true , mixed $exceptions = false , boolean $fullPath = false )

Returns an array of the contents of the current directory. The returned array holds two arrays: One of directories and one of files.

Parameters
boolean $sort optional true

Whether you want the results sorted, set this and the sort property to false to get unsorted results.

mixed $exceptions optional false
Either an array or boolean true will not grab dot files
boolean $fullPath optional false
True returns the full path
Returns
mixed
Contents of current directory as an array, an empty array on failure
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::read

realpath() public ¶

realpath( string $path )

Get the real path (taking ".." and such into account)

Parameters
string $path
Path to resolve
Returns
string
The resolved path
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::realpath

slashTerm() public static ¶

slashTerm( string $path )

Returns $path with added terminating slash (corrected for Windows or other OS).

Parameters
string $path
Path to check
Returns
string
Path with ending slash
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::slashTerm

tree() public ¶

tree( string $path = null , mixed $exceptions = false , string $type = null )

Returns an array of nested directories and files in each directory

Parameters
string $path optional null
the directory path to build the tree from
mixed $exceptions optional false

Either an array of files/folder to exclude or boolean true to not grab dot files/folders

string $type optional null
either 'file' or 'dir'. null returns both files and directories
Returns
mixed
array of nested directories and files in each directory
Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::tree

Properties detail

$_directories ¶

protected array

Holds array of complete directory paths.

$_errors ¶

protected array

Holds errors from last method.

array()

$_files ¶

protected array

Holds array of complete file paths.

$_messages ¶

protected array

Holds messages from last method.

array()

$mode ¶

public integer

Mode to be used on create. Does nothing on windows platforms.

0755

$path ¶

public string

Path to Folder.

Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::$path
null

$sort ¶

public boolean

Sortedness. Whether or not list results should be sorted by name.

Link
http://book.cakephp.org/2.0/en/core-utility-libraries/file-folder.html#Folder::$sort
false
OpenHub
Rackspace
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (GitHub)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • Slack
  • Paid Support

Generated using CakePHP API Docs