浅析php中如何在有限的内存中读取大文件


Posted in PHP onJuly 02, 2013

正常情况下,我们可以使用fseek来读取,好处就是不会一次性读取,以下代码只适合边取边处理的情况,不适合一次性读取一次性处理。
可以用以下办法生成测试文件

$file_handle = fopen("./csdn.txt", "rb+");
for ($index1 = 1; $index1 <= 2000000; $index1++) {
    fwrite($file_handle, 'http://3water.com'.$index1."\r");
}
fclose($file_handle);

读取处理代码如下:
$i = 0;
$now = '';
while ($i >= 0) {
    if ($i>10) {
        break;
    }
    fseek($file_handle, 0, SEEK_CUR);
    $now = fgetc($file_handle);//可以自己写个判断false表示文件到头
    if ($now == "\r") {
        echo '找到断点';
    }
    echo $now;
    $i++;
}
fclose($file_handle);
PHP 相关文章推荐
PHP 翻页 实例代码
Aug 07 PHP
数组与类使用PHP的可变变量名需要的注意的问题
Jun 20 PHP
解析阿里云ubuntu12.04环境下配置Apache+PHP+PHPmyadmin+MYsql
Jun 26 PHP
PHP中使用php://input处理相同name值的表单数据
Feb 03 PHP
php判断数组中是否存在指定键(key)的方法
Mar 17 PHP
smarty自定义函数用法示例
May 20 PHP
PHP培训要多少钱
Jun 06 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
Sep 29 PHP
在php的yii2框架中整合hbase库的方法
Sep 20 PHP
Laravel框架实现文件上传的方法分析
Sep 29 PHP
laravel通过a标签从视图向控制器实现传值
Oct 15 PHP
PHP利用缓存处理用户注册时的邮箱验证,成功后用户数据存入数据库操作示例
Dec 31 PHP
解析PHP 5.5 新特性
Jul 02 #PHP
php仿QQ验证码的实例分析
Jul 01 #PHP
计算php页面运行时间的函数介绍
Jul 01 #PHP
php 地区分类排序算法
Jul 01 #PHP
解析PHP跳出循环的方法以及continue、break、exit的区别介绍
Jul 01 #PHP
php 常用算法和时间复杂度
Jul 01 #PHP
关于php循环跳出的问题
Jul 01 #PHP
You might like
全国FM电台频率大全 - 16 河南省
2020/03/11 无线电
超外差式晶体管收音机的组装与统调
2021/03/01 无线电
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
PHP加密解密字符串汇总
2015/04/26 PHP
Yii2 assets清除缓存的方法
2016/05/16 PHP
JavaScript延迟加载
2021/03/09 Javascript
js中判断控件是否存在
2010/08/25 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
JS 获取浏览器和屏幕宽高等信息代码
2014/03/31 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
Js控制滑轮左右滑动实例
2015/02/13 Javascript
跟我学习javascript的var预解析与函数声明提升
2015/11/16 Javascript
Bootstrap实现响应式导航栏效果
2015/12/28 Javascript
js滑动提示效果代码分享
2016/03/10 Javascript
jQuery+CSS实现一个侧滑导航菜单代码
2016/05/09 Javascript
基于Nodejs利用socket.io实现多人聊天室
2017/02/22 NodeJs
详解webpack2+React 实例demo
2017/09/11 Javascript
JavaScript门面模式详解
2017/10/19 Javascript
vue jsx 使用指南及vue.js 使用jsx语法的方法
2017/11/11 Javascript
使用async、enterproxy控制并发数量的方法详解
2018/01/02 Javascript
一步步教会你微信小程序的登录鉴权
2018/04/09 Javascript
基于vue+echarts 数据可视化大屏展示的方法示例
2020/03/09 Javascript
JavaScript实现打字游戏
2021/02/19 Javascript
[08:42]DOTA2每周TOP10 精彩击杀集锦vol.2
2014/06/25 DOTA
python3.8与pyinstaller冲突问题的快速解决方法
2020/01/16 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
Python对Tornado请求与响应的数据处理
2020/02/12 Python
简单的命令查看安装的python版本号
2020/08/28 Python
法国体育用品商店:GO Sport
2019/10/23 全球购物
怎样有效的进行自我评价
2013/10/06 职场文书
婚纱摄影师求职信范文
2014/04/17 职场文书
股东授权委托书范文
2014/09/13 职场文书
2016年春季运动会通讯稿
2015/11/25 职场文书
python之基数排序的实现
2021/07/26 Python
深入解析MySQL索引数据结构
2021/10/16 MySQL
python获取带有返回值的多线程
2022/05/02 Python