該函式將給定的檔案指針從當前的位置讀取到 EOF,並把結果寫到輸出緩衝區。
基本介紹
- 外文名:fpassthru
- 定義: 函式輸出檔案指針處剩餘數據
- 語法:file
- 提示:寫入數據後,就必須調用 rewind
定義和用法,語法,說明,提示和注釋,例子 1,例子 2,
定義和用法
語法
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.r"); fpassthru($file); ?> |
PHP Filesystem 函式