1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      php中怎么使用fseek函數(shù)讀取大文件-創(chuàng)新互聯(lián)

      這篇文章給大家介紹php 中怎么使用fseek函數(shù)讀取大文件,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

      創(chuàng)新互聯(lián)是專業(yè)的灌云網(wǎng)站建設(shè)公司,灌云接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行灌云網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

      方法一:


      首先通過fseek找到文件的最后一位EOF,然后找最后一行的起始位置,取這一行的數(shù)據(jù),再找次一行的起始位置,再取這一行的位置,依次類推,直到找到了$num行。實現(xiàn)代碼如下:

      整個代碼執(zhí)行完成耗時 0.0095 (s)

      function tail($fp,$n,$base=5)
      {
        assert($n>0);
        $pos = $n+1;
        $lines = array();
        while(count($lines)< =$n){
          try{
            fseek($fp,-$pos,SEEK_END);
          } catch (Exception $e){
            fseek(0);
            break;
          }
          $pos *= $base;
          while(!feof($fp)){
            array_unshift($lines,fgets($fp));
          }
        }
        return array_slice($lines,0,$n);
      }
      var_dump(tail(fopen("access.log","r+"),10));

       方法二 :

      還是采用fseek的方式從文件最后開始讀,但這時不是一位一位的讀,而是一塊一塊的讀,每讀一塊數(shù)據(jù)時,就將讀取后的數(shù)據(jù)放在一個buf里,然后通過換行符(n)的個數(shù)來判斷是否已經(jīng)讀完最后$num行數(shù)據(jù).實現(xiàn)代碼如下

      整個代碼執(zhí)行完成耗時 0.0009(s).

      $fp = fopen($file, "r");
      $line = 10;
      $pos = -2;
      $t = " ";
      $data = "";
      while ($line > 0) {
        while ($t != "n") {
          fseek($fp, $pos, SEEK_END);
          $t = fgetc($fp);
          $pos --;
        }
        $t = " ";
        $data .= fgets($fp);
        $line --;
      }
      fclose ($fp);
      echo $data

      關(guān)于php 中怎么使用fseek函數(shù)讀取大文件就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


      當(dāng)前標(biāo)題:php中怎么使用fseek函數(shù)讀取大文件-創(chuàng)新互聯(lián)
      網(wǎng)站URL:http://www.ef60e0e.cn/article/hhjjc.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        滁州市| 冷水江市| 句容市| 信丰县| 武功县| 津市市| 前郭尔| 灵川县| 雷州市| 涟水县| 旌德县| 锡林郭勒盟| 临桂县| 安福县| 江山市| 海兴县| 左贡县| 穆棱市| 东辽县| 晴隆县| 北辰区| 延寿县| 北海市| 衡阳市| 建水县| 平罗县| 永仁县| 文安县| 海南省| 建水县| 楚雄市| 化德县| 常德市| 新余市| 兴安县| 轮台县| 广东省| 长子县| 卓资县| 禹州市| 平谷区|