devnullius / php-tmp-file
A convenience class for temporary files
v1.0.5
2019-09-14 20:42 UTC
Requires
- php: >=7.1.0
Requires (Dev)
- phpunit/phpunit: 7.5.*
README
A convenience class for temporary files.
Features
- Create temporary file with arbitrary content
- Delete file after use (can be disabled)
- Send file to client, either inline or with save dialog
- Save file locally
- Inject callback with custom file sender
Examples
<?php use devnullius\tmp\File; $file = new File('some content', '.html'); // send to client for download $file->send('home.html'); // save to disk $file->saveAs('/dir/test.html'); // Access file name and directory echo $file->getFileName(); echo $file->getTempDir();
If you want to keep the temporary file, e.g. for debugging, you can set the $delete
property to false:
<?php use devnullius\tmp\File; $file = new File('some content', '.html'); $file->delete = false;
If you want to use other way to send files you can give callback as in example (Here is Yii2 response sendFile)
<?php use devnullius\tmp\File; $file = new File('some content', '.html'); $file->setResponseMethod(static function ($_filename, $filename) { \Yii::$app->response->sendFile($_filename, $filename); }); $fileName = 'greatFileName.txt'; // and if there is set any response method it's going to be executed $file->send($fileName);