Herunterladen von Dateien vom FTP-Server in den Browser mit Header in Inhaltslänge
Sie können eine Datei direkt in den Browser des Benutzers herunterladen, ohne sie dort zu speichern den Server, indem Sie die Ausgabepufferung aus dem Code entfernen.
<code class="php">ftp_get($conn_id, "php://output", $file, FTP_BINARY);</code>
Um den Content-Length-Header hinzuzufügen, müssen Sie zuerst die Dateigröße mit ftp_size() ermitteln:
<code class="php">$conn_id = ftp_connect("ftp.example.com"); ftp_login($conn_id, "username", "password"); ftp_pasv($conn_id, true); $file_path = "remote/path/file.zip"; $size = ftp_size($conn_id, $file_path); header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename=" . basename($file_path)); header("Content-Length: $size"); ftp_get($conn_id, "php://output", $file_path, FTP_BINARY);</code>
Denken Sie daran, die Fehlerbehandlung einzuschließen, um eine vollständige Lösung zu erhalten.
Zusätzlicher Hintergrund
Weitere Informationen zur FTP-Dateiverarbeitung finden Sie in den folgenden Ressourcen:
Das obige ist der detaillierte Inhalt vonWie kann ich mit PHP Dateien von einem FTP-Server direkt in einen Browser herunterladen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!