站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        php文件操作之如何一次性獲得文件的全部數(shù)據(jù)

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

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

        我們有一個(gè)名為“test.txt”的文本文件,里面的內(nèi)容為:

        php文件操作之如何一次性獲得文件的全部數(shù)據(jù)

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

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

        輸出結(jié)果:

        php文件操作之如何一次性獲得文件的全部數(shù)據(jù)

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

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

        使用fread()讀取整個(gè)文件,還要先打開文件,計(jì)算整個(gè)文件的大小,讀取完還要關(guān)閉文件,有復(fù)雜,有沒有更簡(jiǎn)便的?答案是有,可以使用readfile()函數(shù)

        我們看看下面的示例:

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

        輸出結(jié)果:

        php文件操作之如何一次性獲得文件的全部數(shù)據(jù)

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

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

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

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

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

        • $context參數(shù):設(shè)置文件句柄的環(huán)境

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

        @是一個(gè)錯(cuò)誤控制運(yùn)算符,將其放置在一個(gè) PHP 表達(dá)式之前,該表達(dá)式可能產(chǎn)生的任何錯(cuò)誤信息都將被忽略掉。

        好了就說到這里了,有其他想知道的,可以點(diǎn)擊這個(gè)哦。→ →PHP文件基礎(chǔ)操作

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

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 精品人妻无码一区二区色欲产成人| 国产精品亚洲专区在线观看 | 四虎国产精品永久地址51| 久久精品国产只有精品66 | 中文精品99久久国产| 99精品伊人久久久大香线蕉| 国产精品久久久亚洲| 亚洲国产精品国自产拍AV| 精品人妻无码专区中文字幕| 日韩精品一区二区三区大桥未久| 国产精品视频一区二区噜噜| 中文精品无码中文字幕无码专区| 国产内地精品毛片视频| 国内精品久久久久影院免费| 国语精品一区二区三区| 亚洲精品无码不卡在线播HE| 亚洲AV无码之日韩精品| 免费精品久久久久久中文字幕 | 99精品视频在线观看| 无码国产69精品久久久久网站 | 国产亚洲精品无码专区| 亚洲午夜精品久久久久久人妖| 99久久精品日本一区二区免费| 久久亚洲国产成人精品性色| 亚洲精品亚洲人成在线观看| 久久久久人妻一区精品果冻| 国产网红主播无码精品| 国产成人精品怡红院在线观看| 久久精品国产亚洲沈樵| 精品久久一区二区三区| 国产精品网站在线观看| 国产在线精品网址你懂的| 国产精品2019| 国产香蕉精品视频在| 亚洲国产精品国自产拍电影 | 欧美精品亚洲精品日韩| 四虎精品8848ys一区二区| 免费精品99久久国产综合精品| 久久精品国产精品青草| 北条麻妃国产九九九精品视频| 国产精品日韩深夜福利久久|