打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
php实现读取超大文件的方法
<?php/** * 取文件最后$n行 *  * @param string $filename 文件路径 * @param int $n 最后几行 * @return mixed false表示有错误,成功则返回字符串 */function FileLastLines($filename, $n){   if(!$fp = fopen($filename, 'r')){    echo '打开文件失败,请检查文件路径是否正确,路径和文件名不要包含中文';    return false;    }  $pos = -2;  $eof = '';  $str = '';  while($n > 0){    while($eof != 'n'){      if(!fseek($fp, $pos, SEEK_END)){        $eof = fgetc($fp);        $pos–;        }else{        break;        }      }    $str .= fgets($fp);    $eof = '';    $n–;    }  return $str;  }echo nl2br(FileLastLines('sss.txt', 4));/** * * * 取文件最后$n行 * *  * @param string $filename 文件路径 * * @param int $n 最后几行 * * @return mixed false表示有错误,成功则返回字符串 */function FileLastLines($filename, $n){  if(!$fp = fopen($filename, 'r')){    echo '打开文件失败,请检查文件路径是否正确,路径和文件名不要包含中文';    return false;    }  $pos = -2;  $eof = '';  $str = '';  while($n > 0){    while($eof != 'n'){      if(!fseek($fp, $pos, SEEK_END)){        $eof = fgetc($fp);        $pos--;        }else{        break;        }      }    $str .= fgets($fp);    $eof = '';    $n--;    }  return $str;  }echo nl2br(FileLastLines('sss . txt', 4));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));$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;?>
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
PHP读取大文件末尾N行的高效方法
PHP读写文件高并发处理操作实例详解
PHP生成静态页面详解
PHP读取docdocxxlspdftxt内容
并发下常见的加锁及锁的PHP具体实现代码
php 实现按行读取文件的实例
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服