apfelbox / php-file-download
A library to help with creating downloads for files in PHP
Installs: 170 762
Dependents: 3
Suggesters: 0
Security: 0
Stars: 71
Watchers: 3
Forks: 19
Open Issues: 3
Requires
- php: >=5.3
- skyzyx/mimetypes: ~1.1
This package is not auto-updated.
Last update: 2022-10-01 05:43:35 UTC
README
A class to help with creating downloads for files in PHP.
Tip
If you can use direct downloads, you should just use them. This class is for providing downloads of files out of PHP, for example if you want to provide a download to a temporarily created file.
Usage
The examples assume, that you have included the namespace:
use Apfelbox\FileDownload\FileDownload;
Create a download for a file on your file system
$fileDownload = FileDownload::createFromFilePath("/path/to/file.pdf"); $fileDownload->sendDownload("download.pdf");
Create a download for a file via file pointer
$file = /* your file, somewhere opened with fopen() or tmpfile(), etc.. */; $fileDownload = new FileDownload($file); $fileDownload->sendDownload("download.pdf");
Create a download for a file via content
$content = "This is the content of the file:"; $fileDownload = FileDownload::createFromString($content); $fileDownload->sendDownload("download.txt");
For example, you can create downloads for PDF files, generated by Zend (or any other library):
$pdf = new Zend_Pdf(); $page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4); $pdf->pages[] = $page; /* draw content in the pdf ... */ $fileDownload = FileDownload::createFromString($pdf->render()); $fileDownload->sendDownload("download.pdf");