您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
三六零分类信息网 > 赤峰分类信息网,免费分类信息发布

php实现读取超大文件的方法,_PHP教程

2025/10/7 11:44:52发布32次查看
php实现读取超大文件的方法,通常来说在php读取大文件的时候,我们采用的方法一般是一行行来讲取,而不是一次性把文件全部写入内存中,这样会导致php程序卡死,下面就给大家介绍这样一个例子。
读取大文件最后几行数据:
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) 0){ while ($t != n){ fseek($fp, $pos, seek_end); $t = fgetc($fp); $pos --; } $t = ; $data .= fgets($fp); $line --; }fclose ($fp);echo $data;?>
读者可以根据该实例特点加以改进和完善,使之更加符合自身应用需求。
http://www.bkjia.com/phpjc/851333.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/851333.htmltecharticlephp实现读取超大文件的方法, 通常来说在php读取大文件的时候,我们采用的方法一般是一行行来讲取,而不是一次性把文件全部写入内存中...
赤峰分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product