Search
Close this search box.
Search
Close this search box.

Files and Directories

Checking whether a file or a folder exists

The file_exists() function returns TRUE if a provided file or directory exists on the server. This can be used to test for the presence of a file before doing anything with it:

if (file_exists('somefile.ext')) { // do something }
if (file_exists('somedirectory')) { // do something }

Creating a directory

To create a directory:

mkdir('directory_name');

You can also create nested subdirectories like this:

mkdir('folder_01/subfolder', 0, TRUE);

Copying a file

To copy a file from one folder to another, just use the copy or rename function respectively:

$oldFilePath = './assets/dir1/photo.jpg';
$newFilePath = './assets/dir2/photo.jpg';
copy( $oldFilePath , $newFilePath ); // copy the file

Moving a file or directory

To move a file or directory from one folder to another, just use the copy or rename function respectively:

rename( $oldFilePath , $newFilePath ); // move the file

Deleting a file

To delete a file, just use the unlink function:

unlink($oldFilePath);

Important notice: This function deletes files only, not folders.

Writing to file

 

Finding the contents of a directory

To find all of the contents of a directory, the easiest option is to use the scandir() function:

$files= scandir('./directory');
print_r($files);

The output from the above will look something like this:

Array
(
    [0] => .
    [1] => ..
    [2] => 1.jpg
    [3] => 2.gif
    [4] => 3.png
    [5] => bar.txt
    [6] => baz
    [7] => foo.txt
    [8] => link2foo.txt
)

To exclude the . and .. directory aliases you can do this:

$files = array_slice(scandir('./directory'), 2);
print_r($files);

The output from the above will look something like this:

Array
(
    [0] => 1.jpg
    [1] => 2.gif
    [2] => 3.png
    [3] => bar.txt
    [4] => baz
    [5] => foo.txt
    [6] => link2foo.txt
)