Download von Daten erzwingen

Mit folgendem Code können Daten als Download an den Browser übergeben werden.

03.04.2018

Den Inhalt aus einer Datei als Download erzwingen

Um die Daten als Download bereitzustellen, müssen diese zunächst eingelesen werden. Eine Datei kann mit dem Befehl readfile eingelesen werden. Der Inhalt der Datei wird direkt an den Ausgabepuffer übergeben.

1
2
3
4
5
header('Content-Type: text/plain',true);
header('Content-Disposition: attachment; filename="'.$filename.'"',true);
header('Content-Length: '.filesize($file),true);
readfile($file);
exit();

Mit einem Doppelklick kann der gesamte Code markiert werden.

Daten aus einer Variable als Download erzwingen

Falls die Daten bereits in einer Variable gespeichert sind und und nicht erst aus einer Datei eingelesen werden müssen, kann folgender Code verwendet werden, um den Download zu erzwingen:

1
2
3
4
5
header('Content-Type: text/plain',true);
header('Content-Disposition: attachment; filename="'.$filename.'"',true);
header('Content-Length: '.mb_strlen($content),true);
echo $content;
exit();

Mit einem Doppelklick kann der gesamte Code markiert werden.