当前位置:首页 > 开发 > 互联网 > 正文

php读取大文件的方法

发表于: 2016-03-03   作者:北京流浪儿   来源:转载   浏览:
摘要: 1、使用file函数直接读取$starttime=microtime_float(); ini_set('memory_limit','-1'); $file="testfile.txt"; $data=file($file); $line=count($data);//总行数 $lastLine=$data[count($data)-1];//最后一行 echocount($da

1、使用file 函数直接读取

$starttime = microtime_float();
ini_set('memory_limit','-1');
$file = "testfile.txt";
$data = file($file);
$line = count($data);//总行数
$lastLine = $data[count($data)-1]; //最后一行

echo count($data);
echo $endtime = microtime_float();

function microtime_float(){
    list($usec,$sec) = explode(" ",microtime());
    return (float($usec) + float($sec))
}

缺点,非常耗时,此方法不推荐使用,因为需要把文件全部载入内存

2、使用fgets函数,一行一行读取

<?php
$file = fopen("testfile.txt","r");
 while(!feof($file))
 {
     echo fgets($file);
 }
 fclose($file);

3、是spl库函数

<?php
try{
    foreach( new SplFileObject('testfile.txt') as $line)
    echo $line.'<br />';
}catch (Exception $e){
    echo $e->getMessage();
}

另外网上有很多按照块读取文件的,有兴趣的读者可以试试,我试了没成功,好像必须含有换行符“\n”才可以。

 

php读取大文件的方法

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
在php中,对于文件的读取时,最快捷的方式莫过于使用一些诸如file、file_get_contents之类的函数,
给大家推荐个点外卖可以每单10几块钱的公众号号,可以关注试试 整理了一下PHP中读取文件的几个方法,
最近做一个项目,经理给了我TT多数据,让我做数据转换并导入有效Mysql,说是mongo的纯数据文件,直
引言 文件操作是应用程序最为基本的功能之一,Win32 API和MFC均提供有支持文件处理的函数和类,常用
转载请注明出处:http://blog.csdn.net/jmppok/article/details/18360595 在C/C++网络编程中不免会
转载请注明出处:http://blog.csdn.net/jmppok/article/details/18360595 在C/C++网络编程中不免会
二话不说 直接上代码 function getCSVdata($filename) { $row = 1;//第一行开始 if(($handle = fope
PHP的IO操作比起java来说简单的不是一点点,同样的读取文件java的处理比较繁琐,php基本上就是几句
通过.NET中的默认类实现,但是采用不同类,针对不同的情况: 具体如下: 类: /// <summary>
最近发现了一种可以不使用软件在win7系统下查找大文件的方法,分享如下: 第一步:打开我的电脑,进
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号