位置: 编程技术 - 正文

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

  • 私车公用如何处理
  • 金税三期反映出来的是前几年的问题
  • 税后净利润怎么算股价
  • 安装服务费税率是多少
  • 印花税购销合同计税依据70%
  • 计提工资附什么单据
  • 收到工程服务费会计分录
  • 一季度计提的所得税分录
  • 跨境电商的钱怎么到账
  • 新办商贸企业一般纳税人合同金额
  • 预付账款属于什么账户
  • 投资款多投了怎么办
  • 企业计提长期借款的利息
  • 行政相对人和行政管理相对人的区别
  • 增值税计税依据包含消费税吗
  • 旅行社代订机票可以入差旅费报销吗
  • 购进旅客运输服务抵扣会计分录
  • 客户方流水号是什么
  • 技术转让所得减半征收计算
  • 工程已完工又发生了成本怎么处理
  • 事业单位取得的财政拨款免税吗
  • 分公司税率怎样确定
  • 财务管理和会计学哪个好就业
  • 科目余额表借贷方余额不一致
  • 法院执行款可以开发票吗
  • 公司没有残疾人需要缴纳残保金吗
  • 融资租赁直租会查征信吗
  • 三种测试网速的方法
  • macbook不用键盘膜会进灰吗
  • thinkphp yii
  • 合并报表期初数可以直接抄上年数吗
  • lnmgr.exe是什么
  • hotkey osd driver可以卸载吗
  • csrsv.exe是什么
  • 强烈的建议
  • php加密方式有哪些
  • php 函数作为参数
  • 专项资金怎么填表
  • 建筑业总包增值税
  • 什么情况下需要异地预缴增值税
  • 收到老板的钱怎么做分录
  • dedecms51
  • 什么叫现金流量表举例说明
  • 一般纳税人无票收入填在哪一栏
  • 内含报酬率的意义
  • 员工工资扣工作服押金怎么做账呢
  • 广告费的税额计入哪里
  • 月末在产品生产成本会计分录
  • 固定资产可以一次性入费用的标准
  • 弱电工程属于什么行业
  • 定额发票的使用方法
  • 固定资产原值如何计算
  • 劳务费需要通过应付职工薪酬科目核算吗
  • 税务会计每个月几号需要干工作流程
  • win10安装mysql初始化失败原因
  • sqlserver清空所有表数据
  • issch.exe
  • hipo.dll是什么
  • 怎么添加第二个人脸识别
  • ubuntu20.04设置共享文件夹
  • linux系统bug
  • unable to boot - please use a kernel appropriate for your cpu的解决方法
  • win7旗舰版如何进入bios
  • extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
  • 在android的activity活动中
  • 为了防止编码过程的过载现象出现
  • 简略说明本岗位最高风险的防范措施和现场处置方案
  • 相机调取失败
  • python爬虫:入门+进阶
  • js优化108条建议
  • 猫的游戏视频
  • python九大特点
  • jquery获取当前元素是第几个元素
  • 辽宁省国税局网站
  • 废旧物资税务风险评估
  • 电子税务局做什么的
  • 房产税的计税依据及税率
  • 网上报税失败什么原因
  • 北京市平谷区有地铁吗?
  • 单位轿车出售怎么处理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设