位置: 编程技术 - 正文

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获取文本内容)

  • 小规模纳税人税收优惠2023
  • 外贸企业税务处理方式
  • 农产品收购发票可以跨区域开吗
  • 没有发票不能税前扣除,所以年底结账前需要检查
  • 股权拍卖溢价部分如何做会计处理?
  • 行政单位的财务报告包括财务报表和财务情况说明书
  • 酒店业小规模纳税人可以享受2023年应纳税额抵减政策吗
  • 出口退税的企业范围
  • 税局代个人开增值税专票
  • 个人劳务报酬所得税计算方法2020
  • 股东收回投资要交税吗
  • 上个月开的发票退回怎么处理?
  • 2020年916减免退库什么意思
  • 工地没有手续擅自开工违法吗
  • 广告公司收到专票怎么做成本
  • 应收出租包装物的租金计入
  • mac电脑command键快捷设置
  • win10打开游戏老是提示
  • 如何做会计分录
  • 税务检查所得税调整
  • ms-dos安装
  • 直接人工分配按计时工资怎么分
  • 已付货款没有发票能做支出吗
  • PHP:pg_meta_data()的用法_PostgreSQL函数
  • php零基础入门教程
  • 政府收回土地使用权免征增值税的条件
  • php框架怎么使用
  • 浅水滩怎么样
  • vue2 mixin
  • unity udim
  • 数以千计的拼音是什么
  • 手把手带你做一件事
  • 织梦安装数据库一直连接失败
  • mongodb配置远程访问
  • 个体户营业额一般填多少
  • 企业正常性停产什么意思
  • 医院交什么保险
  • 预缴税款计算表填0.01行吗
  • 出口报关单运费可以填0吗
  • 汇算清缴后发现成本多做了
  • sql语句中单引号是什么
  • 公司注销了就可以不发工资么
  • 设计部工资计入哪个科目
  • 企业微信开通微信支付
  • 无形资产摊销账面价值
  • 融资租赁业务如何开展
  • 贷款减值准备是什么意思
  • 银行存款支付投资者投入的款项54万
  • 进项税认证未抵扣怎么做账
  • 会计结账一般都是谁做
  • 会计利润是利润加暂时性差异吗为什么
  • ms sql mysql
  • c#如何使用数据库
  • 六款常见的墨水
  • DxO Optics Pro 9 激活破解安装详细图文教程
  • win8系统怎样查看本机的ip地址
  • win7旗舰版系统激活密钥
  • windows7快速截图
  • xp系统如何添加启动项
  • kdeskcore.exe是什么
  • Win RT 8.1 Update 3怎么提前更新安装使用?
  • wind8桌面
  • windows8如何共享打印机
  • Linux编译内核无法启动
  • form表单中input设置为readonly和disabled的区别
  • unity 数学
  • Unity3D游戏开发引擎
  • jqgrid设置宽度
  • python中安装模块的命令
  • jquery jwt
  • tomcat8.5.8
  • python+flask
  • 如何在电子税务局变更财务负责人
  • 弥补亏损怎么算
  • ipadpro关税多少
  • 增值税检查调整的账务处理
  • 国税总局云南省税务局官网
  • 地税局收税标准
  • a级纳税人和一级的区别
  • 买辆12万的车上路共需要多少钱
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设