欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

php如何實現(xiàn)有規(guī)律大文件的讀取與寫入功能-創(chuàng)新互聯(lián)

這篇文章將為大家詳細講解有關php如何實現(xiàn)有規(guī)律大文件的讀取與寫入功能,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)公司專注于企業(yè)成都全網(wǎng)營銷、網(wǎng)站重做改版、黃南州網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、HTML5建站、商城網(wǎng)站制作、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為黃南州等各大城市提供網(wǎng)站開發(fā)制作服務。

第一條.file()函數(shù)的效率問題.

file()函數(shù)的效率很底下 如果是有規(guī)律的文件.比如每行一條相應數(shù)據(jù).那么盡量不要是用file()函數(shù)

可以使用file_get_contents()然后用explode切割.這樣效率會快三分之一

舉個例子:

文件樣式如下:

11111

22222

33333

44444

55555

.....

nnnnnnnnnnn

如果用file($file)讀入的話.耗時很長.

可以用如下方法explode("\n",file_get_contents($file));效率會快很多.

第二條,數(shù)組的遍歷方式.

數(shù)據(jù)已經(jīng)被讀入數(shù)組了.下面就是遍歷了.

我所需要的是確定數(shù)組中有無一個值的存在,比如說44444是否在數(shù)組中.首先想到的是in_array()

不過實驗了下發(fā)現(xiàn)效率很低下.于是參考別人的代碼想到一個辦法.把數(shù)組翻轉(zhuǎn)過來.變成所有值都為1.原來的值變成了索引.那么只要我在if里寫($arr[索引]==1)去判斷.果然效率高出很多.

在數(shù)組的遍歷過程中.如果數(shù)組個頭非常大,并且數(shù)組中的數(shù)據(jù)并不是全能用到的話,好把用來遍歷的數(shù)組抽出來.這樣會提高很多效率.

第三條,數(shù)組的存儲.

把計算過后的數(shù)據(jù)保存起來.存在一個文件中.考慮了三種方法.一種是直接寫成php文件.一種是serialize,一種是json串.

第一種方式

直接寫入文件<?php 連接var_export($var)連接";"連接?>保存成PHP

需要的時候直接require進來.

第二種方式.把變量serialize然后file_put_contents()進入文件.使用的時候unserialize就ok.

第三種方式和第二種類似.只不過寫成了json串.

經(jīng)過測試.發(fā)現(xiàn)第二種效率高.第三種其次.和第二種效率不相上下.第一種最慢.和我預想的差距很大.真是大跌眼鏡.

關于“php如何實現(xiàn)有規(guī)律大文件的讀取與寫入功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

網(wǎng)頁標題:php如何實現(xiàn)有規(guī)律大文件的讀取與寫入功能-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://chinadenli.net/article12/dospdc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供建站公司網(wǎng)站排名、定制開發(fā)Google、品牌網(wǎng)站建設云服務器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)