Bagaimana untuk Muat Turun Fail FTP Terus ke Pelayar dalam PHP Tanpa Storan Pelayan?

Susan Sarandon
Lepaskan: 2024-11-03 06:27:30
asal
533 orang telah melayarinya

How to Download an FTP File Directly to the Browser in PHP Without Server Storage?

Muat turun Fail ke Penyemak Imbas daripada FTP tanpa Storan Pelayan atau Pengalihan Semula

Dalam skrip PHP, mengambil fail daripada pelayan FTP ialah tugas biasa. Walau bagaimanapun, menyimpan fail ini pada pelayan web sebelum menghantarnya ke penyemak imbas pengguna boleh menjadi tidak diingini. Artikel ini meneroka cara memuat turun fail daripada pelayan FTP terus ke penyemak imbas, memintas storan pelayan dan mengelakkan ubah hala.

Kod Asal

Kod awal mendapatkan semula fail FTP ke dalam memori menggunakan ftp_get( ) dan ob_start():

<code class="php">public static function getFtpFileContents($conn_id , $file)
{
    ob_start();
    $result = ftp_get($conn_id, "php://output", $file, FTP_BINARY);
    $data = ob_get_contents();
    ob_end_clean();
    if ($resul)
        return $data;
    return null;
}</code>
Salin selepas log masuk

Strim Terus ke Penyemak Imbas

Untuk menstrim fail terus ke penyemak imbas tanpa menyimpannya, alih keluar penimbalan output:

<code class="php">ftp_get($conn_id, "php://output", $file, FTP_BINARY);</code>
Salin selepas log masuk

Menambah Pengepala Panjang Kandungan

Untuk memasukkan pengepala Panjang Kandungan, tanya saiz fail menggunakan ftp_size():

<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>
Salin selepas log masuk

Ingat untuk melaksanakan pengendalian ralat seperti yang diperlukan. Untuk mendapatkan maklumat lanjut tentang pengendalian fail FTP, rujuk sumber seperti "Senaraikan dan muat turun fail yang diklik daripada FTP."

Atas ialah kandungan terperinci Bagaimana untuk Muat Turun Fail FTP Terus ke Pelayar dalam PHP Tanpa Storan Pelayan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan