天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php筆記之:有規律大文件的讀取與寫入的分析

這幾天在做一個東西.研究php讀取行數較多的文件(大概上百萬行).考慮到效率問題.進行了簡單的研究.總結如下

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

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

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

舉個例子:

文件樣式如下:

11111/n

22222/n

33333/n

44444/n

55555/n

...../n

nnnnnnnnnnn/n

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

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

第二條,數組的遍歷方式.

數據已經被讀入數組了.下面就是遍歷了.

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

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

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

第三條,數組的存儲.

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

第一種方式

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

需要的時候直接require進來.

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

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

經過測試.發現第二種效率最高.第三種其次.和第二種效率不相上下.第一種最慢.和我預想的差距很大.真是大跌眼鏡.

php技術php筆記之:有規律大文件的讀取與寫入的分析,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 一手揉着乳头一手模仿抽插视频 | 一本道久久综合久久88 | 欧美性最猛xxxx在线观看视频 | 99在线观看免费视频 | 伊人久久精品线影院 | 国产区免费在线观看 | 欧美成人免费一区二区三区不卡 | 精品国产乱码久久久久久乱码 | 麻美ゆま夫の目の前で犯 | 性xxxx18公交车 | 风月宝鉴之淫乱英雄传 电影 | 在线a亚洲视频 | 99成人在线 | 亚洲国产成人久久一区www妖精 | 中文国产乱码在线人妻一区二区 | 国产午夜精品视频在线播放 | 哇嘎在线精品视频在线观看 | 亚洲午夜久久久无码精品网红A片 | 女性性纵欲派对 | 高hh乱亲女真实 | 国产ts在线 | younv 学生国产在线视频 | 欧美久久综合网 | 父皇轻点插好疼H限 | 艳鉧动漫1~6全集观看在线 | 国产午夜一级鲁丝片 | 伊人狼人久久精品热9 | 精精国产www视频在线观看免费 | X8X8拨牐拨牐X8免费视频8午夜 | 在线观看成人免费 | 一区二区三区无码被窝影院 | YELLOW视频在线观看大全 | 久久影院一区 | 色综合久久久久久 | 丰满女友bd高清在线观看 | 色戒在线完整观看在线播放版 | 99久久精品国产交换 | 亚洲aaaa级特黄毛片 | 精品亚洲国产熟女福利自在线 | GOGOGO高清免费播放 | 翁止熄痒禁伦短文合集免费视频 |