位置: 编程技术 - 正文

PHP读取大文件末尾N行的高效方法推荐(php获取文件夹大小)

编辑:rootadmin

推荐整理分享PHP读取大文件末尾N行的高效方法推荐(php获取文件夹大小),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php打开文件读取内容,php 读取大excel,php读取文件内容的方法和函数,php读取文件内容的方法和函数,php 读取文本文件,php读取文件大小,php读取文件大小,php 读取大文件,内容如对您有帮助,希望把文章链接给更多的朋友!

小文件几兆以内大小,都可以通过file()函数,将文件按行读入数组,在用array_pop取得最后一行,就可以了。

但是对于很大的文本文件来说,机器内存不够大,或者php本身memory_limit有限制,这个办法就不适用了,即使强行不限制,效率也是非常低的。

没有办法了吗?当然有,不过没有现成的函数了,需要自己动手了。

这里需要用到文件指针,学过C的应该知道指针式个嘛玩意,通俗的讲吧,PHP中通过fopen打开一个文件,这时候还没有读取文件,这时候指向的是文件开头,指针位置也就是0,当你通过fgets或者fgetc从文件中读取内容的时候,你读多少,指针也相应往前进多少,这也是

PHP读取大文件末尾N行的高效方法推荐(php获取文件夹大小)

得以实现的原理,即fgets是从当前指针位置向后读取指定长度的字符串,直到遇见换行符为止。

那么可不可以控制指针的位置到倒数第N行位置呢?很遗憾,没有,但是可以将指针直接移动到末尾,并倒退N个位置,通过fseek()函数。

我们先将指针移动到末尾,并向后倒退2个位置,通过fgetc读取一个字符,判断这个字符是不是"n"也就是换行符,如果不是换行符,那么继续倒退一个位置再次判断,直到我们倒退到上一行的结尾换行符为止,直接使用fgets将一整行都取出来即可。这里面用到两个while循环,外层循环控制需要取得的行数,内层循环控制fseek动作。

函数如下:

以上这篇PHP读取大文件末尾N行的高效方法推荐就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

php 如何获取文件的后缀名 比如图片文件的后缀,jpg或gif等有两个方法一,假如$img为图片文件名$img=.gif;$img_ext=substr($img,strrpos($img,'.'));二,用到php数组,先把文件名字符串读取到数

PHP获取指定时间段之间的 年,月,天,时,分,秒 核心代码:ClassUtils{/***formatMySQLDateTime(YYYY-MM-DDhh:mm:ss)把mysql中查找出来的数据格式转换成时间秒数*@paramstring$datetime*/publicfunctionfmDatetime($datetime){$year=substr

JSON字符串传到后台PHP处理问题的解决方法 在项目开发的时候由于涉及到批量记录数组的传入,由于字段多,所以不可能能用普通的方式&a=&=gsd&v=rwe这样去传送,所以想到了前端传JSON格式过去co

标签: php获取文件夹大小

本文链接地址:https://www.jiuchutong.com/biancheng/296278.html 转载请保留说明!

上一篇:PHP中读取文件的几个方法总结(推荐)(php读取php文件内容)

下一篇:php 如何获取文件的后缀名(php获取文本内容)

  • 建筑业预缴增值税怎么填纳税申报表
  • 缴纳个税会计分录是什么
  • 工商年报多久能显示
  • 审计调整分录要在金蝶调吗
  • 讲师培训费开票税点是?
  • 咨询公司所得税税负率是多少合适
  • 为员工购买商业保险专票可以抵扣吗
  • 个体工商户五级税率
  • 收回次月作废的发票需要做账吗
  • 建筑施工企业收到工程款会计分录
  • 固定资产什么时候入账
  • 日常生活中各种仪式
  • 房地产公司开水电费发票
  • 个人借款到期未还诉讼时效
  • 雇主责任险发票的项目名称怎么写
  • 金融保险法
  • 承租方出售资产的行为
  • 保安费用分录
  • 应交增值税有哪些
  • 销售部门的固定资产折旧计入什么科目
  • bios setup uitlity
  • linux取消静态ip
  • 季度交企业所得税是按照什么来交的
  • 收到预付款计入什么科目
  • 应付票据和应收票据的关系
  • 租车接送员工上班怎么样
  • PHP:imagecolorat()的用法_GD库图像处理函数
  • php优秀代码
  • php获取当天是星期几
  • 汇兑损益计入什么科目
  • tensorflow gpu安装
  • vue 如何使用
  • php实现文件上传的函数
  • phpcms怎么修改模板风格
  • mysql5.7字符集
  • mongodb连接数
  • dedecms怎么改图片
  • 不同单位发的劳务费会收税吗
  • 用友t3核算管理如何取消记账
  • 税控服务费全额抵扣申报怎么填
  • 固定资产核算应包括什么
  • 工会经费与残保金属于什么
  • 实收资本如何计算印花税及附加税
  • 已抵扣认证的发票开红字发票需要将原票退回吗
  • 地下车库的成本包括哪些
  • 库存商品过期变成废品
  • 什么是补偿性余额,对银行借款的成本有何影响?
  • 进货没有发票怎么做账
  • 查账征收的优点
  • 管理费用如何分摊到项目
  • 增值税留抵退税最新政策
  • 预付房租收到发票怎么写摘要
  • 电子口岸登录显示证书错误
  • 自产自销的茶叶公司怎么做账
  • 三证合一后还有纳税人资格证吗
  • 数据库日期要加引号吗
  • 卸载win+r
  • 进入bios设置u盘启动
  • 通过防火墙可以保证窃听到的信息毫无价值
  • win10自带地图打不开
  • 卸载声卡驱动有什么影响
  • win10预览版退回正式版
  • hwid.exe
  • SCHDPL32.EXE - SCHDPL32是什么进程 有什么用
  • win7系统启动不起来什么原因
  • 本地电脑的网卡物理地址
  • win7控制面板找不到windows update
  • 问题的英语怎么读
  • css布局多行多列
  • js解析机制
  • jquery删除dom
  • bootstrap tree table
  • python最简单
  • javascript函数大全
  • python 脚本编写
  • 税务局航天信息的操作流程
  • 江西税收优惠
  • 代理记账的账本是什么
  • 放管服中的服的深层含义
  • 杭州注册公司需要钱吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设