站長資訊網
        最全最豐富的資訊網站

        php文件操作之如何一次性獲得文件的全部數據

        在之前的文章《php文件操作之逐行讀取文件》中,我們介紹了逐行讀取文件的方法,然后利用循環我們可以獲取文件的全部數據。那如果不使用循環,如何獲取文件的全部數據?本篇文章就給大家介紹一下不借助循環,一次性獲得文件全部數據的方法。

        PHP中一次性讀取文件全部數據有多種方法,今天主要來了解兩個函數fread()和readfile()。

        我們有一個名為“test.txt”的文本文件,里面的內容為:

        php文件操作之如何一次性獲得文件的全部數據

        首先我們來了解fread()函數,看看下面的示例:

        <?php header("Content-Type: text/html;charset=utf-8");    //設置字符編碼 $file = "test.txt"; $handle = fopen($file, 'r');                 //打開文件 $contents = fread($handle, filesize($file));    //讀取文件內容 echo $contents; fclose($handle);//關閉文件 ?>

        輸出結果:

        php文件操作之如何一次性獲得文件的全部數據

        可以看出,“test.txt”文件的內容全部輸出了。

        其實,fread($handle,$length)函數的作用是讀取打開文件$handle中,指定$length字符長度的字符。但當$length參數的值被指定為 “filesize($file)”,那么就可以讀取整個文件的全部數據了。filesize()函數的作用是獲取文件大小,在 fread()函數中的作用就是讀取整個文件。

        使用fread()讀取整個文件,還要先打開文件,計算整個文件的大小,讀取完還要關閉文件,有復雜,有沒有更簡便的?答案是有,可以使用readfile()函數

        我們看看下面的示例:

        <?php header("Content-Type: text/html;charset=utf-8");    //設置字符編碼 $file = "test.txt"; readfile($file);    //讀取文件內容 ?>

        輸出結果:

        php文件操作之如何一次性獲得文件的全部數據

        是不是很簡單,直接使用一行代碼“readfile($file);”就可以一次性獲得文件的全部數據了;不需要打開或關閉文件,也不需要使用echo等輸出語句就可輸出文件內容。

        下面我們來了解一下readfile()函數

        readfile($filename,$include_path,$context)函數會讀取一個文件并將其寫入到輸出緩沖,同時返回從文件中讀入的字節數。

        該函數接受1個必需參數$filename(指定要讀取的文件名或文件路徑),2個可省略的參數$include_path$context

        • $include_path參數:設定是否想要在 include_path (在 php.ini 中)中搜索該文件,默認為 FALSE;如果想,則設置參數值為 '1'。

        • $context參數:設置文件句柄的環境

        如果讀取失敗,readfile()函數會返回FALSE并附帶錯誤信息;我們可以通過在函數名前面添加一個 '@' 來隱藏錯誤輸出。

        @是一個錯誤控制運算符,將其放置在一個 PHP 表達式之前,該表達式可能產生的任何錯誤信息都將被忽略掉。

        好了就說到這里了,有其他想知道的,可以點擊這個哦。→ →PHP文件基礎操作

        推薦:《PHP面試題大匯總(收藏)》《php視頻教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 99久久免费国产精精品| 94久久国产乱子伦精品免费| 热久久这里只有精品| 亚洲精品亚洲人成在线观看| 国产L精品国产亚洲区久久| 欧美精品中文字幕亚洲专区| 久久久精品人妻无码专区不卡 | 欧美精品v欧洲精品| 欧美ppypp精品一区二区| 国产精品美女免费视频观看| 久久福利青草精品资源站| 精品国产v无码大片在线观看 | 无夜精品久久久久久| 国产乱码精品一区二区三| 久久国产成人精品麻豆| 99re国产精品视频首页| 精品蜜臀久久久久99网站| 午夜精品久久久久久久| 在线观看国产精品日韩av| 欧美精品高清在线xxxx| 精品国产福利盛宴在线观看| 国产精品麻豆欧美日韩ww| 国产精品一级AV在线播放| 国产精品无码免费专区午夜| 国产精品免费久久| 国产精品嫩草影院一二三区| 99久久综合国产精品二区| 午夜精品美女自拍福到在线| 国语自产拍精品香蕉在线播放| 国产精品天天影视久久综合网| 97久久超碰国产精品旧版| 8AV国产精品爽爽ⅴa在线观看| 91精品国产综合久久久久久| 99热门精品一区二区三区无码| 国产女主播精品大秀系列| 国产精品午睡沙发系列| AV无码精品一区二区三区| 精品久久久久久久| 亚洲综合一区二区国产精品| 国产高清精品在线| 亚洲精品动漫人成3d在线|