位置: 编程技术 - 正文

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
  • 什么叫增值税还是所得税
  • 公积金超出上限部分
  • 无形资产摊销完还需要报废
  • 内外账合并步骤
  • 报销通行费会计分录
  • 期末留抵税额退税是什么意思
  • 财务期初期末
  • 支付的股权溢价款账务处理
  • Windows XP具有类似于Apple Aqua的秘密主题
  • php封装api
  • 招标公司在招标过程中的注意事项
  • PHP:Memcached::isPersistent()的用法_Memcached类
  • Vue3 + Vite + TypeScript + dataV 打造可视化大屏
  • PHP:mcrypt_generic()的用法_Mcrypt函数
  • 委托银行收款的会计分录怎么写
  • 行政事业性收费目录
  • 变分模态分解gnss
  • yolov5输出result
  • zendframework3中文手册
  • python网络爬虫技术
  • framework架构
  • gparted 命令行
  • php的输出语句
  • cookie from
  • 生活服务业纳税义务发生时间
  • 邮寄的发票对方没收到怎么办
  • phpcms添加内容
  • 织梦程序
  • 一般纳税人申请条件
  • mysql5.5远程连接
  • 为什么开票需要提供开户许可证
  • 核定征收和查账征收可以自己选择吗
  • 出租房屋会计账务处理
  • 建设工程项目设计阶段的投资控制方法有哪些
  • 收到采购免费赔偿怎么办
  • 主营业务收入转入什么科目
  • 融资费用包括什么?
  • 企业中征码怎么生成
  • 生产型企业加计扣除10%
  • 净资产增长率增长说明什么
  • 长期股权投资损益调整怎么回事
  • 违反会计法规定的行为有哪些
  • 解释sql server实例
  • mysql免安装版怎么使用
  • 猛料高手
  • 杭州租房补贴社保断缴影响
  • xp系统 win7
  • 如何设置微信语音来电铃声
  • vmwareworkstation10虚拟机
  • windows无法启动,可能原因
  • Windows Update XP SP3官方下载地址
  • xshell远程桌面
  • win7旗舰版如何进入bios
  • javascript括号
  • jsonp怎么使用
  • js验证正整数
  • jquery获取file文件
  • javascript面向对象 第三方类库
  • opencvandroid开发实战
  • 怎么查询河南省考职位报名人数
  • 公司信用等级b级是什么意思
  • 税务稽查证据问题
  • 餐饮专票可以抵扣吗
  • 增值税申报表更正申报期限
  • 小规模纳税人达到一般纳税人标准
  • 国家税务总局对税务助征员
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设