Tutorials
Einige nützliche Hilfen und Code-Schnipsel, die ich immer wieder benötige und deshalb hier für alle sammle.
Zurück zur Übersicht
PHP: Einfacher Datei-Download
#Tutorials#PHP
Möchte man eine Datei zum Download anbieten und die Datei nicht direkt verlinken, so kann man mit PHP die Datei an den Benutzer senden. Das hat mehrere Vorteile. So werden beispielsweise PDF Dateien auch heruntergeladen und nicht direkt im Browser geöffnet.
Die folgende kleine Funktion nimmt einen Pfad zu einer Datei entgegen und schickt diese dann via readfile an den Benutzer.
function sendFileAndExit($filename) {
if(file_exists($filename)){
//Get file type and set it as Content Type
$finfo = finfo_open(FILEINFO_MIME_TYPE);
header('Content-Type: ' . finfo_file($finfo, $filename));
finfo_close($finfo);
//Use Content-Disposition: attachment to specify the filename
header('Content-Disposition: attachment; filename='.basename($filename));
//No cache
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
//Define file size
header('Content-Length: ' . filesize($filename));
ob_clean();
flush();
readfile($filename);
exit;
}
}
// Benutzung
sendFileAndExit('/home/meine-datei.pdf');
Kommentare
Es gibt noch keine Kommentare. Sei der Erste!
Hinterlasse einen Kommentar