Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Muat Turun Fail FTP Terus ke Pelayar dalam PHP Tanpa Storan Pelayan?

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

Susan Sarandon
Susan Sarandonasal
2024-11-03 06:27:30535semak imbas

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>

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>

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>

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!

Kenyataan:
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