Working With Files
Contents
- Reading Files
- Writing Files
- Removing files
- File Uploads
- File Extensions
- Checking File Types
- Getting MIME Types
- Copying Directories
- Removing Directories
Reading Files
Getting the contents of a file:
$contents = File::get('path/to/file');
Writing Files
Writing to a file:
File::put('path/to/file', 'file contents');
Appending to a file:
File::append('path/to/file', 'appended file content');
Removing Files
Deleting a single file:
File::delete('path/to/file');
File Uploads
Moving a $_FILE to a permanent location:
Input::upload('picture', 'path/to/pictures', 'filename.ext');
Note: You can easily validate file uploads using the Validator class.
File Extensions
Getting the extension from a filename:
File::extension('picture.png');
Checking File Types
Determining if a file is given type:
if (File::is('jpg', 'path/to/file.jpg')) { // }
The is method does not simply check the file extension. The Fileinfo PHP extension will be used to read the content of the file and determine the actual MIME type.
Note: You may pass any of the extensions defined in the application/config/mimes.php file to the is method. Note: The Fileinfo PHP extension is required for this functionality. More information can be found on the PHP Fileinfo page.
Getting MIME Types
Getting the MIME type associated with an extension:
echo File::mime('gif'); // outputs 'image/gif'
Note: This method simply returns the MIME type defined for the extension in the application/config/mimes.php file.
Copying Directories
Recursively copy a directory to a given location:
File::cpdir($directory, $destination);
Removing Directories
Recursively delete a directory:
File::rmdir($directory);