php高效統計大文件行數

*文
發布: 2023-03-18 15:08:02
原創
2080 人瀏覽過

php如何高效統計大檔案行數?本文主要分享了php超快高效率統計大檔案行數的實例。希望對大家有幫助。

用php取得檔案行數,網路上給的答案通常是使用file這樣一次讀取,這樣就不適用在大檔案。通常大檔案大家用while來循環的逐行統計,這樣的效率太慢

#最快的方法是多行統計,每次讀取N個字節,然後再統計行數,這樣比逐行效率高多了。

測試狀況,檔案大小3.14 GB

##第1次:line: 13214810 , time:56.2779 s;

第2次:line: 13214810 , time:49.6678 s;

/*
 * 高效率计算文件行数
 * @author axiang
*/
function count_line($file){
  $fp=fopen($file, "r");
  $i=0;
  while(!feof($fp)) {
    //每次读取2M
    if($data=fread($fp,1024*1024*2)){
      //计算读取到的行数
      $num=substr_count($data,"\n");
      $i+=$num;
    }
  }
  fclose($fp);
  return $i;
}
登入後複製

相關推薦:

PHP 檔案讀取fread、fgets、fgetc、file_get_contents 與file 函數的使用實例程式碼

PHP 檔案本身操作

PHP 檔案讀入到數組

以上是php高效統計大文件行數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!