angezeigt werden Wenn Sie erzwingen wollen Ein Download, können Sie etwas wie folgt verwenden:
<?php
// Fetch the file info.
$filePath = '/path/to/file/on/disk.jpg';
if(file_exists($filePath)) {
$fileName = basename($filePath);
$fileSize = filesize($filePath);
// Output headers.
header("Cache-Control: private");
header("Content-Type: application/stream");
header("Content-Length: ".$fileSize);
header("Content-Disposition: attachment; filename=".$fileName);
// Output file.
readfile ($filePath);
exit();
}
else {
die('The provided file path is not valid.');
}
?>
Wenn Sie einfach zu diesem Skript verknüpfen Mit einem normalen Link wird die Datei heruntergeladen.
Übrigens, das obige Code-Snippet muss am Anfang einer Seite ausgeführt werden (bevor Header oder HTML-Ausgabe stattgefunden hat.) Vorsicht auch, wenn Sie sich entscheiden, eine Funktion zum Herunterladen von beliebigen Dateien zu erstellen - Sie müssen sicherstellen, dass Sie Directory Traversal verhindern (realpath ist praktisch), nur Downloads aus einem definierten Bereich, etc. erlauben, wenn Sie die Eingabe von einem $ _GET oder $ _POST akzeptieren.
'download'? – RaYell
@RaYell er sagte * in PHP *. Also ist es eigentlich "echo" download '; ': P –