Path

ez components / documentation / api reference / 2007.2 / base


Base: ezcBaseFile

[ Tutorial ] [ Class tree ] [ Element index ] [ ChangeLog ] [ Credits ]

Class: ezcBaseFile

Provides a selection of static independent methods to provide functionality for file and file system handling. [source]
This example shows how to use the findRecursive method:
 1.  <?php
 2.  // lists all the files under /etc (including subdirectories) that end in
 3.  // .conf
 4.   $confFiles ezcBaseFile::findRecursive"/etc"array'@\.conf$@' ) );
 5.  
 6.  // lists all autoload files in the components source tree and excludes the
 7.  // ones in the autoload subdirectory.
 8.   $files ezcBaseFile::findRecursive(
 9.      "/dat/dev/ezcomponents",
10.      array'@src/.*_autoload.php$@' ),
11.      array'@/autoload/@' )
12.  );
13.  
14.  // lists all binaries in /bin except the ones starting with a "g"
15.   $data ezcBaseFile::findRecursive"/bin"array()array'@^/bin/g@' ) );
16.  ?>

Descendents

Child Class Description
ezcFile Provides a selection of static independent methods to provide functionality for file and file system handling. This class is deprecated, please use ezcBaseFile instead.

Method Summary

public static string calculateRelativePath( $path, $base )
Calculates the relative path of the file/directory '$path' to a given $base path.
public static void copyRecursive( $source, $destination, [$depth = -1], [$dirMode = 0775], [$fileMode = 0664] )
Recursively copy a file or directory.
public static array findRecursive( $sourceDir, [$includeFilters = array()], [$excludeFilters = array()], $excludeFilters )
Finds files recursively on a file system
public static bool isAbsolutePath( $path, [$os = null] )
Returns whether the passed $path is an absolute path, giving the current $os.
public static void removeRecursive( $directory )
Removes files and directories recursively from a file system

Methods

calculateRelativePath

string calculateRelativePath( string $path, string $base )
Calculates the relative path of the file/directory '$path' to a given $base path.
This method does not touch the filesystem.

Parameters

Name Type Description
$path string  
$base string  

copyRecursive

void copyRecursive( string $source, string $destination, [int $depth = -1], [int $dirMode = 0775], [int $fileMode = 0664] )
Recursively copy a file or directory.
Recursively copy a file or directory in $source to the given destination. If a depth is given, the operation will stop, if the given recursion depth is reached. A depth of -1 means no limit, while a depth of 0 means, that only the current file or directory will be copied, without any recursion.
You may optionally define modes used to create files and directories.

Parameters

Name Type Description
$source string  
$destination string  
$depth int  
$dirMode int  
$fileMode int  

Throws

ClassDescription
ezcBaseFileNotFoundException If the $sourceDir directory is not a directory or does not exist.
ezcBaseFilePermissionException If the $sourceDir directory could not be opened for reading, or the destination is not writeable.

findRecursive

array findRecursive( string $sourceDir, [ $includeFilters = array()], [ $excludeFilters = array()], array(string) $excludeFilters )
Finds files recursively on a file system
With this method you can scan the file system for files. You can use $includeFilters to include only specific files, and $excludeFilters to exclude certain files from being returned. The function will always go into subdirectories even if the entry would not have passed the filters.

Parameters

Name Type Description
$sourceDir string  
$includeFilters array(string)  
$excludeFilters array(string)  
$excludeFilters array  

Throws

ClassDescription
ezcBaseFileNotFoundException if the $sourceDir directory is not a directory or does not exist.
ezcBaseFilePermissionException if the $sourceDir directory could not be opened for reading.

isAbsolutePath

bool isAbsolutePath( string $path, [string $os = null] )
Returns whether the passed $path is an absolute path, giving the current $os.
With the $os parameter you can tell this function to use the semantics for a different operating system to determine whether a path is absolute. The $os argument defaults to the OS that the script is running on.

Parameters

Name Type Description
$path string  
$os string  

removeRecursive

void removeRecursive( string $directory )
Removes files and directories recursively from a file system
This method recursively removes the $directory and all its contents. You should be extremely careful with this method as it has the potential to erase everything that the current user has access to.

Parameters

Name Type Description
$directory string  

Last updated: Mon, 17 Dec 2007