PHP fpassthru() 函數
阿新 • • 發佈:2017-07-31
如果 tip 檢索 www school 下載 部分 有效 處理
定義和用法
fpassthru() 函數輸出文件指針處的所有剩余數據。
該函數將給定的文件指針從當前的位置讀取到 EOF,並把結果寫到輸出緩沖區。
語法
fpassthru(file)
參數 | 描述 |
---|---|
file | 必需。規定要讀取的打開文件或資源。 |
說明
如果發生錯誤, fpassthru() 返回 false。否則 fpassthru() 返回從 file 讀取並傳遞到輸出的字符數目。
文件指針必須有效,並且必須指向一個由 fopen() 或 fsockopen() 成功打開(但還沒有被 fclose() 關閉)的文件。
提示和註釋
提示:如果已經向文件寫入數據,就必須調用 rewind() 來將文件指針指向文件頭。
提示:如果既不修改文件也不在特定位置檢索,只想將文件的內容下載到輸出緩沖區,應該使用 readfile(),這樣可以省去 fopen() 調用。
註釋:當在 Windows 系統中將 fpassthru() 用於二進制文件時,要確保在用 fopen() 打開文件時在 mode 中附加了 b 來將文件以二進制方式打開。鼓勵在處理二進制文件時使用 b 標誌,即使系統並不需要,這樣可以使腳本的移植性更好。
例子
例子 1
<?php $file = fopen("test.txt","r"); // 讀取第一行 fgets($file); // 把文件的其余部分發送到輸出緩存 echo fpassthru($file); fclose($file); ?>
輸出:
There are three lines in this file. This is the last line.59
註:59 指示被傳遞的字符數。
例子 2
轉儲 www 服務器的 index 頁:
<?php $file = fopen("http://www.example.com","r"); fpassthru($file); ?>
PHP fpassthru() 函數