《PHP實戰(zhàn):php超快高效率統(tǒng)計大文件行數(shù)》要點:
本文介紹了PHP實戰(zhàn):php超快高效率統(tǒng)計大文件行數(shù),希望對您有用。如果有疑問,可以聯(lián)系我們。
PHP教程用php獲取文件行數(shù),網(wǎng)上給出的答案通常是使用file這樣一次性讀取,這樣不適用在大文件.通常大文件大家用while來循環(huán)的逐行統(tǒng)計,這樣的效率太慢
PHP教程最快的辦法是多行統(tǒng)計,每次讀取N個字節(jié),然后再統(tǒng)計行數(shù),這樣比逐行效率高多了.
PHP教程測試情況,文件大小 3.14 GB
PHP教程第1次:line: 13214810 , time:56.2779 s;
第2次:line: 13214810 , time:49.6678 s;
PHP教程
/*
* 高效率計算文件行數(shù)
* @author axiang
*/
function count_line($file){
$fp=fopen($file, "r");
$i=0;
while(!feof($fp)) {
//每次讀取2M
if($data=fread($fp,1024*1024*2)){
//計算讀取到的行數(shù)
$num=substr_count($data,"\n");
$i+=$num;
}
}
fclose($fp);
return $i;
}
PHP教程以上所述便是本文的全部內(nèi)容了,希望大家能夠喜歡.
歡迎參與《PHP實戰(zhàn):php超快高效率統(tǒng)計大文件行數(shù)》討論,分享您的想法,維易PHP學院為您提供專業(yè)教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/9754.html