浅析php中如何在有限的内存中读取大文件
2015-01-24信息快讯网
突然遇到了一个要读取超过80M文件的需求,很悲剧的,不管是file_get_content还是file什么的,都会将读取的文件一次性加载到内存中
正常情况下,我们可以使用fseek来读取,好处就是不会一次性读取,以下代码只适合边取边处理的情况,不适合一次性读取一次性处理。可以用以下办法生成测试文件
$file_handle = fopen("./csdn.txt", "rb+"); for ($index1 = 1; $index1 <= 2000000; $index1++) { fwrite($file_handle, 'http://jb51.net'.$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遍历文件夹下的所有文件和子文件夹示例
PHP使用imagick读取PDF生成png缩略图的两种方法
php读取目录所有文件信息dir示例
PHP读取文件内容后清空文件示例代码
PHP处理SQL脚本文件导入到MySQL的代码实例
Drupal读取Excel并导入数据库实例
php读取excel文件示例分享(更新修改excel)
PHP文件去掉PHP注释空格的函数分析(PHP代码压缩)
解析PHP 5.5 新特性
mongo Table类文件 获取MongoCursor(游标)的实现方法分析
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
解析web文件操作常见安全漏洞(目录、文件名检测漏洞)
深入apache配置文件httpd.conf的部分参数说明
php读取文件内容的几种方法详解
PHP 读取大文件的X行到Y行内容的实现代码
基于PHP读取csv文件内容的详解
php读取二进制流(C语言结构体struct数据文件)的深入解析
PHP 处理TXT文件(打开/关闭/检查/读取)