当前位置:  编程技术>php

PHP读取大文件的类SplFileObject使用介绍

    来源: 互联网  发布时间:2014-08-26

    本文导语:  如果加载的文件特别大时,如几百M,上G时,这时性能就降下来了,那么PHP里有没有对大文件的处理函数或者类呢? 答案是:有的。PHP真的越来越“面向对象”了,一些原有的基础的SPL方法都开始陆续地实现出class了。从 PHP 5.1...

如果加载的文件特别大时,如几百M,上G时,这时性能就降下来了,那么PHP里有没有对大文件的处理函数或者类呢? 答案是:有的。
PHP真的越来越“面向对象”了,一些原有的基础的SPL方法都开始陆续地实现出class了。
从 PHP 5.1.0 开始,SPL 库增加了 SplFileObject 与 SplFileInfo 两个标准的文件操作类。SplFileInfo 是从 PHP 5.1.2 开始实现的。
从字面意思理解看,可以看出 SplFileObject 要比 SplFileInfo 更为强大。
不错,SplFileInfo 仅用于获取文件的一些属性信息,如文件大小、文件访问时间、文件修改时间、后缀名等值,而 SplFileObject 是继承 SplFileInfo 这些功能的。
 

代码如下:
/** 返回文件从X行到Y行的内容(支持php5、php4) 
 * @param string $filename 文件名
 * @param int $startLine 开始的行数
 * @param int $endLine 结束的行数
 * @return string
 */
function getFileLines($filename, $startLine = 1, $endLine=50, $method='rb') {
    $content = array();
    $count = $endLine - $startLine; 
    // 判断php版本(因为要用到SplFileObject,PHP>=5.1.0)
    if(version_compare(PHP_VERSION, '5.1.0', '>=')){
        $fp = new SplFileObject($filename, $method);
        $fp->seek($startLine-1);// 转到第N行, seek方法参数从0开始计数
        for($i = 0; $i current();// current()获取当前行内容
            $fp->next();// 下一行
        }
    }else{//PHP

    
 
 

您可能感兴趣的文章:

  • PHP读取大文件的类SplFileObject用法详解
  • php读取文件内容并清空文件
  • php读取文本内容到二维数组
  • php逐行读取文件示例
  • php读取富文本的时p标签会出现红线是怎么回事
  • PHP按行读取文件时如何删除换行符
  • php如何读取3389端口
  • php读取mysql入门实例
  • php读取3389的脚本
  • php读取(打开)csv文件的小例子
  • php读取sqlite数据库入门实例
  • php读取mysql数据库入门实例
  • apache通过php的oci函数读取Oracle(字符集ZHS16GBK)时,显示乱码,如何解决?
  • PHP读取文件内容后清空文件示例代码
  • PHP按行读取文件时删除换行符的3种方法
  • php读取与下载csv文件的示例代码
  • php读取csv实现csv文件下载功能
  • PHP读取与写入文件小例子
  • 按行读取文件的代码(php、c实现)
  • php读取目录所有文件信息dir示例
  • php读取csv、写入csv与导出csv文件
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • php是什么文件 php文件怎么打开
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • PHP源文件加密工具 PHP Screw
  • PHP 'ext/soap/php_xml.c'不完整修复存在多个任意文件泄露漏洞
  • Linux下重编译PHP后Apache竟然不能解析.php文件?
  • 图解找出PHP配置文件php.ini的路径的方法
  • php解压文件代码实现php在线解压
  • PHP大文件上传问题解析 php大文件上传配置参考
  • 查找php配置文件php.ini所在路径的二种方法
  • linux下的php文件放在哪个文件夹下才能访问
  • php导入excel php使用phpexcel导入excel文件
  • 在linux下配的apache的服务,但是读documeroot下的html文件可以,但是.php文件就不行,为什么呢?
  • PHP配置文件设置上传大文件
  • 请教一个linux下命令运行php文件的问题
  • 如何修改PHP+Apache上传文件大小限制
  • 单文件PHP框架 SinglePHP
  • PHP include任意文件或URL介绍
  • mod_php.so文件被删除还有得救吗
  • php 解压rar文件及zip文件的方法
  • 开源PHP文件管理器 PGRFileManager
  • PHP 5.4.19 和 PHP 5.5.3 发布及下载地址
  • IIS7配置PHP图解(IIS7+PHP_5.2.17/PHP_5.3.5)
  • PHP去除html标签,php标记及css样式代码参考
  • php输入流php://input使用示例(php发送图片流到服务器)
  • php通过socket_bind()设置IP地址代码示例
  • PHP转换器 HipHop for PHP
  • php安装完成后如何添加mysql扩展
  • PHP 框架 Pop php
  • PHP的substr() 函数用法
  • 修改配置真正解决php文件上传大小限制问题(apache+php) iis7站长之家




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3