A PHP 8.4+ library that simplifies file and folder operations using an object-oriented API. Supports renaming, moving, streaming, and deletion with optional integration for PSR-7 and Nette\Http\FileUpload.
- File and folder manipulation with fluent API
- Relative and absolute path resolution
- File iteration via chunks (stream-style)
- Automatic cleanup of temporary files
- PSR-7 stream support
Psr\Http\Message\StreamInterface - Nette FileUpload support
Nette\Http\FileUpload - Easy extension via inheritance
composer require matraux/filesystem| version | PHP | Note |
|---|---|---|
| 1.0.0 | 7.4+ | Support PHP 7.4 |
| 2.0.0 | 8.3+ | Support PHP 8.3 |
| 3.0.0 | 8.4+ | Support PHP 8.4 |
See File for advanced instructions.
use Matraux\FileSystem\File\File;
$file = File::fromPath('C:\Users\MATRAUX\Webs\Resources\FileSystem\log.txt');
echo $file->name; // "log.txt"See Folder for advanced instructions.
use Matraux\FileSystem\Folder\Folder;
$folder = Folder::fromPath()->addPath('backup');
echo $folder->absolute; // "C:\Users\MATRAUX\Webs\Resources\FileSystem\backup"See Development for debug, test instructions, static analysis, and coding standards.
For bug reports and feature requests, please use the issue tracker.