婷婷亚洲久悠悠色悠在线播放_天天爽夜夜爽人人爽一区二区_少妇群交换bd高清国语版_日韩不卡一区二区_欧美精品一二区_久久国产精品影视

18842388900

網(wǎng)站建設(shè) APP開發(fā) 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當前位置>首頁 > 知識 > 網(wǎng)站建設(shè)

使用PHP

讀取文件的正確方法 Roger McCoy是一名開發(fā)人員,他使用各種編程語言,包括C,Java,JavaScript,Perl,PHP和Microsoft Visual Basic。他在PHP應(yīng)用程序開發(fā)方面有五年的經(jīng)驗,但他可能更熟悉呼叫中心行業(yè)的技術(shù)人員。

讓我們算一算有多少種方法

處理像PHP這樣的現(xiàn)代編程語言的樂趣之一就是有很多選擇。 PHP可以很容易地贏得Perl的座右銘“有多種方法可以做到”(不僅僅是一種方法),特別是在文件處理方面。但是,許多可用選項中的哪一個是完成工作的最佳工具?當然,實際答案取決于解析文件的目標,因此值得花時間探索所有選項。

傳統(tǒng)的 fopen 方法

fopen方法可能是前C和C ++程序員最熟悉的方法,因為如果你使用它們,它們或多或少是你多年來掌握的工具。對于這些方法中的任何一種,使用fopen(讀取數(shù)據(jù)的標準方法)打開文件,然后使用fclose關(guān)閉文件,如清單1所示。

清單1:用fgets打開并讀取文件

$ file_handle=fopen('myfile','r'); while(!feof($ file_handle)){$ line=fgets($ file_handle); echo $ line;} fclose($ file_handle);

雖然大多數(shù)具有多年編程經(jīng)驗的程序員都熟悉這些功能,但讓我分解一下。有效執(zhí)行以下步驟:

1.打開文件。 $ file_handle存儲對文件本身的引用。 2.檢查是否已到達文件末尾。 3.繼續(xù)讀取文件,直到它到達文件末尾,并在讀取時打印每一行。 4.關(guān)閉文件。

考慮到這些步驟,我將回顧這里使用的每個文件函數(shù)。

fopen

fopen函數(shù)將創(chuàng)建與文件的連接。我說“創(chuàng)建連接”的原因是因為除了打開文件外,fopen還可以打開一個URL:

$ fh=fopen('http://127.0.0.1/','r');

這行代碼將創(chuàng)建與上一頁的連接,并允許您開始讀取它,就像它是本地文件一樣。

注意:fopen中使用的“r”表示文件以只讀方式打開。由于將數(shù)據(jù)寫入文件超出了本文的范圍,因此我不會列出所有其他選項。但是,如果要從二進制文件中讀取跨平臺兼容性,則應(yīng)將“r”更改為“rb”。稍后您將看到一個示例。

feof

feof命令將檢測您是否已讀取文件末尾并返回True或False。清單1中的循環(huán)將繼續(xù),直到到達文件“myfile”的末尾。注意:如果您讀取URL并且套接字超時,因為無法讀取更多數(shù)據(jù),則feof也將返回False。

fclose

跳到清單1的末尾,fclose將實現(xiàn)與fopen相反的操作:它將關(guān)閉與文件或URL的連接。執(zhí)行此功能后,您將無法再從文件或套接字讀取任何信息。

fgets

回到清單1中的幾行,您將到達文件處理的核心:實際讀取文件。 fgets函數(shù)是處理第一個例子的首選武器。它從文件中獲取一行數(shù)據(jù)并將其作為字符串返回。之后,您可以打印或以其他方式處理數(shù)據(jù)。清單1中的示例將詳細打印整個文件。

如果決定限制處理塊的大小,可以向fgets添加參數(shù)以限制最大行長度。例如,使用以下代碼將行長度限制為80個字符:

$ string=fgets($ file_handle,81);

回想一下C中“\ 0”字符串的結(jié)尾,并將長度設(shè)置為大于實際值的數(shù)字1。因此,如果需要80個字符,則上面的示例使用81.您應(yīng)該養(yǎng)成以下習(xí)慣:只要對此函數(shù)使用行限制,請?zhí)砑哟祟~外字符。

fread

fgets函數(shù)是唯一可用于多個文件讀取函數(shù)的函數(shù)。這是一個更常見的功能,因為逐行解析通常是有意義的。實際上,其他幾個功能可以提供類似的功能。但是,您并不總是需要逐行解析。

然后你需要使用fread。 fread函數(shù)與fgets的處理目標略有不同:它傾向于從二進制文件(即主要不是人類可讀文本的文件)中讀取信息。由于“行”的概念獨立于二進制文件(邏輯數(shù)據(jù)結(jié)構(gòu)通常不以新行終止),因此必須指定需要讀取的字節(jié)數(shù)。

網(wǎng)站建設(shè),小程序開發(fā),小程序制作,微信小程序開發(fā),公眾號開發(fā),微信公眾號開發(fā),網(wǎng)頁設(shè)計,網(wǎng)站優(yōu)化,網(wǎng)站排名,網(wǎng)站設(shè)計,微信小程序設(shè)計,小程序定制,微信小程序定制

相關(guān)案例查看更多

主站蜘蛛池模板: 日韩午夜在线观看 | 高清视频在线观看免费 | 亚洲熟妇少妇任你躁在线观看 | 免费观看老乱熟视频 | 中文字幕一区在线观看 | 亚洲国产精品一区在线观看 | 向往的生活第2季免费观看 被按摩师玩弄到潮喷在线播放 | 中文字幕人妻三级中文无码视频 | 久久久久亚洲精品男人的天堂 | 欧美人牲口杂交在线播放免费 | 亚洲美日韩 | 操人视频在线免费观看 | 国产91久久久久久 | 包青天1一236集在线高清天寒 | 久久久久九九 | 男人操女人的视频网站 | 麻豆少妇厨房com | 国产精品永久久久 | 中文字幕内射无码制服剧情 | 亚洲国产精品综合久久久 | 欧美日韩黄色大片 | 美国一级欧美三级 | 97人人爽人人爽人人一区二区 | 国产精品久久久久久久久久久丝袜 | 国产精品人妻无码久久久郑州天气网 | 成人在线观看免费网站 | 精品人妻无码视频中文字幕一区二区三区 | 性吧有你.com | 韩国免费A级作爱片无码 | 日本xxxx高清色视频在线播放 | 动漫av一区二区在线观看 | 久久爱99| 日本一卡二卡3卡四卡网站精品 | 熟妇高潮一区二区三区 | 国产精品久久高潮无码视频 | 国产高清在线精品二区 | a一级片 | 夜夜高潮夜夜爽夜夜爱 | 玩弄放荡人妇系列AV在线网站 | 亚洲AV成人一区二区三区观看在线 | 中文日产无乱码av在线观 |