Directory helper
We previously covered the file helper but there is also a directory helper called DirectoryHandler
which you can use to retrieve and interact with directories.
DirectoryHandler methods
system
Use the system()
function to get a directory from your Application
. You can use .
notation if you like.
namespace Application;
use Application\Core\DirectoryHandler;
$directory = DirectoryHandler::system('Config.Routes');
public
Use the public()
function to get a file from your public
directory. You can use the .
notation if you like.
$directory = DirectoryHandler::public('assets.js');
Both the system
and the public
method return a Directory
object which has his own set of methods.
Notice when you cast the Directory
object to a string it will return it's absolute path
exists
Returns true
or false
depending on whether the directory exists.
$directory->exists();
writable
Returns true
or false
depending on whether the directory is writable.
$directory->writable();
name
Returns the name of the directory, omitting the full path.
$directory->name();
parent
Returns the parent directory as a Directory
object.
$directory->parent();
scan
Returns all files and directories as either a File
or Directory
object. Optionally you can pass a bool
parameter to make xTend look recursively or not.
$directory->scan(true);
files
Returns all the files in your directory as File
objects. Optionally pass a parameter to perform a recursive search.
$directory->files(false);
directories
Returns all the directories as Directory
object. Optionally pass a parameter to perform a recursive search.
$directory->directories(false);
create
Use the create
method to create the directory if it doesn't exist.
$directory->create();
move
Use move
to rename a directory
$directory->move($destination);
copy
Use copy
to copy a directory
$directory->copy($destination);
remove
Use remove
to delete a directory
$directory->remove();
file
Use the file
method to retrieve a File
object of a specific file in your directory.
$directory->file('my.file.php');
directory
Use the directory
method to retrieve a Directory
object of a specific directory in your current folder.
$directory->directory('my.directory');