CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  PHP

fread()读大文件的问题?

楼主sandy1314(sandy)2005-08-03 11:59:06 在 Web 开发 / PHP 提问

if   (@file_exists($programFullName))   {  
  $handle   =   fopen   ($programFullName,   "r");  
  $contents   =   "     ";  
  do   {  
  $data   =   fread($handle,   1024*1024);  
  if   (strlen($data)   ==   0)   {  
  break;  
  }  
  $contents   .=   $data;  
  flush();  
  }   while(true);  
  fclose($handle);  
  我用上面的代码读一个大文件,比如200M的文件,就会报错:  
  Fatal   error:   Allowed   memory   size   of   67108864   bytes   exhausted   (tried   to   allocate   1048577   bytes)  
  这个问题要怎么解决?  
  谢谢 问题点数:40、回复次数:3Top

1 楼eays(eays)回复于 2005-08-03 12:07:26 得分 0

是啊,我见过手册上说过有一种解决办法的  
  不过我不记得它了,对我还说又没用,呵呵,找找去啊Top

2 楼xuzuning(唠叨)回复于 2005-08-03 14:35:36 得分 0

致命的错误:   允许的记忆大小67108864字节用完地(经过试验的到分派1048577字节)  
   
  你打算把200M的文件都读到内存里才处理吗?Top

3 楼sandy1314(sandy)回复于 2005-08-03 14:42:02 得分 0

错误是出现在这里:$data   =   fread($handle,   1024*1024);  
  我理解是在read的时候是读到内存里了  
  那现在有什么其他的方法吗?Top

相关问题

  • 关于fread 读取文件指针fp->buf大小的问题。
  • 如何使用fread把文件读从一个TMemoryStream流中
  • 用fread读文件100%错误是什么原因?
  • 大文件的读写
  • 在线等,用fread()函数读取文件内容时,怎么获取一个文件的长度信息?
  • 文件未结束,为什么fread读不到预期的字节数?
  • 读取文本文件文件的问题,急呀,大哥!!
  • 写文件,读文件
  • 文件读写!
  • 文件读取?

关键词

  • 文件
  • fread
  • handle
  • data

得分解答快速导航

  • 帖主:sandy1314

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo