kappa / filesystem
Easy system for work with files and directories
Installs: 1 550
Dependents: 4
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/kappa/filesystem
Requires
- php: >= 5.3.3
- kappa/utils: ~1.0
- nette/finder: ~2.2
Requires (Dev)
- kappa/tester: 1.1.*
- nette/http: ~2.2
Suggests
- nette/http: For using FileUpload as File::upload
README
Easy system for work with files and directories
Requirements:
- PHP 5.3.3 or higher
- Kappa\Utils 1.0.0
- Nette framework ~2.1
Installation
The best way to install Kappa/FileSystem is using Composer:
$ composer require kappa/filesystem:@dev
Usages
Create a new file or directory:
$file = File::create('path/to/file.txt', 'Hello wolrd!') // Create a new file with Hello world! text $directory = Directory::create('path/to/directory') // Create a new directory
Opening files and directories:
$file = File::open('path/to/file'); // Open file $dorectory = Directory::open('path/to/file'); // Open directory
Upload files via FileUpload:
// $fileUpload is instance of FileUpload from forms example... $file = File::upload($fileUpload, 'path/to/save/file');
Load file from Nette\Utils\Image
$image = Image::fromFile('image.png'); $image->resize(10,10); $file = File::fromImage($image, 'newImage.png');
Create a new image 'newImage' with dimensions 10x10 px and return instance of File
If you can work with same image without creating new file use original file name as second parameter
File API:
- read()- Returns file content
- overwrite(content)- Overwrite file content (content can be null for clear file)
- clear()- Clear file content (same as- overwrite(null))
- append(content, newLine = true)- Append text to end file
- getInfo()- Returns SplFileInfo
- toImage()- Returns Nette\Utils\Image
Directory API:
- getInfo()- Returns SplFileInfo
- getDirectories()- Returns directories in directory as array- path => Directory
- getFiles()- Returns files in directory as array- path => File
- getContent()- Returns directories and files in directory as array- path => Directory|File
FileSystem API:
- remove(source)- Remove file or directory,- sourcemust be instance of File or Directory
- rename(source, new name, overwrite)- Renamed file or directory.- sourcemust be instance of File or Directory and return new instance of object
- copy(source, target, overwrite)- Copy source to target,- sourcemust be instance of File or Directory,- targetcan be string or instance of Directory. Return instance of copy file;
- move(source, target, overwrite)- Same as- copy()but remove source after copy
Examples:
$file = File::create('file.txt'); $file = FileSystem::rename($file, 'superFile.txt'); $file->getInfo()->getBasename(); // Return superFile.txt