位置: 编程技术 - 正文

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

发布时间:2024-01-15

推荐整理分享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年新规定
  • 医院职工福利费使用范围和标准是多少
  • 非营利性组织有
  • 小规模的应交税费涉及几个三级明细
  • 土地增值税进项税
  • 小微企业增值税减免政策
  • 一般纳税人免税申报表怎么填
  • 小规模企业交纳印花税吗
  • 怎么关闭iphone手机
  • 简易计税的方式
  • 应付职工薪酬包括个人社保和个税吗
  • 物流公司的财务能学到东西吗
  • linux GTK、KDE、Gnome、XWindows 图形界面区别介绍
  • 笔记本电脑预装
  • vbs win10
  • 旅行社代订的住宿费可以抵扣吗
  • 苹果紧急提醒
  • 2020 php 薪资
  • 无偿调入固定资产
  • 政策性搬迁会计处理案例
  • PHP:pg_field_type()的用法_PostgreSQL函数
  • axios异步请求数据
  • 转销坏账准备的会计分录有一个还是两个
  • php echo js
  • php写json
  • js函数怎么调用
  • mess指令
  • 税务局清税
  • 运费已付发票未到会计分录
  • 软件开发企业如何计算利润
  • 厂房建设包括哪些
  • 商业承兑汇票退回给上手公司怎么操作
  • layuitablechecked获取选中数据方式
  • 法人如何提取公积金
  • 报销有专票和普票,怎么出分录
  • 其他债权投资是长期投资吗
  • 工程附加税税率
  • 营改增是否降低了企业税负
  • 库存商品用于投资
  • 收到上市公司分红企业所得税减半征收的情景
  • 结存成本会计分录
  • 房地产开发企业电费做什么科目
  • 会计账簿怎么填写模式
  • 税审报告一定要税所主任签吗
  • 基于mysql的sql应用
  • mysql 5.1.6
  • win2000服务器
  • mac电脑连wifi总是断开
  • freebsd ifconfig
  • linux如何用
  • 电脑照片应用使用不了
  • android开发一般用什么软件
  • 很实用的话
  • 超人飞车助手下载安装
  • Javascript获取元素的父元素
  • android:gravity和android:layout_gravity的区别
  • jquery图片自动滚动
  • python类属性和类方法
  • jquery 扩展事件
  • 广东税务增值税发票查验平台
  • 云南税务查询系统
  • 上海交电费户号8位数
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号