Fungsi fpassthru() PHP
definisi dan penggunaan
Fungsi fpassthru() mengeluarkan semua data tersisa di penanda berkas.
Fungsi ini akan membaca penanda berkas dari posisi saat ini ke EOF, dan menuliskan hasilnya ke area buffer output.
syntaks
fpassthru(berkas)
parameter | deskripsi |
---|---|
berkas | diperlukan. Menentukan berkas atau sumber daya yang akan dibaca. |
deskripsi
jika terjadi kesalahan, fpassthru() mengembalikan false. Jika tidak, fpassthru() mengembalikan dari berkas membaca dan mengirim jumlah karakter ke output.
penanda berkas harus berlaku, dan harus menunjuk ke suatu yang dibuka fopen() atau fsockopen() sukses membuka (tetapi belum digunakan) fclose() berkas yang ditutup ()。
Petunjuk dan Komentar
Petunjuk:Jika sudah menuliskan data ke berkas, maka harus dipanggil rewind() untuk mengarahkan penanda penyangga ke awal berkas.
Petunjuk:Jika tidak mengubah berkas dan tidak mencari di posisi khusus, hanya ingin meunduh konten berkas ke buffer output, maka harus digunakan readfile(), sehingga dapat menghindari pemanggilan fopen().
Komentar:Ketika menggunakan fpassthru() di sistem Windows untuk berkas biner, pastikan untuk menambahkan b di mode saat membuka berkas dengan fopen() untuk membuka berkas dalam mode biner. Disarankan untuk menggunakan tanda b saat mengatur berkas biner, bahkan jika sistem tidak memerlukannya, untuk membuat portabilitas skrip yang lebih baik.
Contoh
Contoh 1
<?php $file = fopen("test.txt","r"); // Baca baris pertama fgets($file); // Kirim bagian sisanya dari berkas ke cache output echo fpassthru($file); fclose($file); ?>
Output:
Ada tiga baris di dalam berkas ini. Ini adalah baris terakhir.59
Catatan:59 adalah jumlah karakter yang disampaikan.
Contoh 2
Dump halaman index server www:
<?php $file = fopen("http://www.example.com","r"); fpassthru($file); ?>