很多站长朋友们都不太清楚php下载大量数据,今天小编就来给大家整理php下载大量数据,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP导出100万数据到excel 2、 php怎么导出大量数据的Excel 3、 PHP中从数据库中下载数据 4、 使用phpexcel导的3000条数据的excel表 下载特别慢怎么办,求解决 5、 php 下载文档是否有限制, 超过2000条数据不能下载了。 6、 php怎么导出大量数据的Excel,phpexcel PHP导出100万数据到excelphp导出数据excel有专门的库,当导出少量数据的时候速度很快,但是当数据量大的时候就会存在服务器内存不够之类的。
所以在导出大量数据的时候就应该分页查询数据,避免服务器宕机。正好PHP提供了fputcsv函数可以将数据写入到csv文件中。
这样我们就可以使用PHP对数据进行分页查询,再写入到csv文件中。
php怎么导出大量数据的Excel$fp = fopen('php://output', 'a');// 输出Excel列名信息$head = array("电子邮件");foreach ($head as $i => $v) { // CSV的Excel支持GBK编码,一定要转换,否则乱码 $head[$i] = iconv('utf-8', 'gbk', $v);}// 将数据通过fputcsv写到文件句柄fputcsv($fp, $head);// 计数器$cnt = 0;// 每隔$limit行,刷新一下输出buffer,不要太大,也不要太小$limit = 100000;// 逐行取出数据,不浪费内存$count = count($email);for($t=0;$t<$count;$t++) { $cnt ++; if ($limit == $cnt) { //刷新一下输出buffer,防止由于数据过多造成问题 ob_flush(); flush(); $cnt = 0; } $row[] = $email[$t]; foreach ($row as $i => $v) { $row[$i] = iconv('utf-8', 'gbk', $v); } fputcsv($fp, $row); unset($row);}
PHP中从数据库中下载数据再把数据读出来不就行了。不明白到底想做成什么样。
如果想做成TXT文本样的数据下载到本地,那就生成TXT文件,数据的排列格式得自己制定。
下载成什么格式?是什么数据?普通文本数据?
将数据生成一定格式的TXT文本在服务器端,然后用户可下载。生成文件的代码网上有。起点中文网的小说下载功能见过没?就是那样的。
生成WORD文件不知道。不过TXT文件倒是可以。可是你为什么非要生成WORD文件呢?数据库里的数据读出来也是纯文本格式。还有一点,你可以生成.doc后缀名的文件,那样打开的话是用WORD打开,但实质上还是纯文本文件。
================================================
我只会ASP。下面是ASP的代码。不过PHP的也不难,你查下函数库就看到了,另外到网上搜一下也很多。写文件操作是一门动态网页语言的很平常操作,一般CMS程序里也有这样的程序片段,可以参考。
FilePath1="Html/AC/"C_ChanalEnName"/"
FilePatstrong=CStr(Year(C_RegTime)Month(C_RegTime))
NHtml=XTTag(YHtml)'系统标签
NHtml=NRTag(NHtml,C_ID)'内容页相关标签
NHtml=TJS_Text(NHtml)'文章页推荐专题
'=================================写文件
'=========判断文件夹
SavePath =FilePath1 FilePatstrong '文件上传路径
'判断SavePath文件夹是否存在,如果不存在则创建
Set myfileobject=server.CreateObject("scripting.filesystemobject")
If not myfileobject.folderexists(Server.MapPath(SavePath)) then myfileobject.CreateFolder(Server.MapPath(SavePath))
set myfileobject=nothing
'===================================
Set fs2=Server.CreateObject("Scripting.FileSystemObject")
File2=Server.MapPath(""FilePath1FilePatstrong"/comic_"C_ID".html")
Set txtf2=fs2.OpenTextFile(File2,2,true)
txtf2.Write NHtml
response.write(" <font color=#FF0000>文章页</font> 静态页生成成功!</br>")
set fs2=nothing
set txtf2=nothing
set File2=nothing
NHtml=""
'===================================
-----------------------------------------------------------------
上面是我的一个程序里摘来的,实际上简化一下就是这样:
'=========判断文件夹
SavePath ="/Html" '文件上创建路径
'判断SavePath文件夹是否存在,如果不存在则创建
Set myfileobject=server.CreateObject("scripting.filesystemobject")
If not myfileobject.folderexists(Server.MapPath(SavePath)) then myfileobject.CreateFolder(Server.MapPath(SavePath))
set myfileobject=nothing
'===================================真正的写文件。
Set fs2=Server.CreateObject("Scripting.FileSystemObject")
File2=Server.MapPath(""SavePath"/Index.txt")'这里是文件名、文件后缀及文件目录。
Set txtf2=fs2.OpenTextFile(File2,2,true)
txtf2.Write NHtml
response.write("文件生成成功。")
set fs2=nothing
set txtf2=nothing
set File2=nothing
NHtml=""
'===================================
代码中“NHtml”是变量,是用来存要生成文本内容的。如,从数据库中读取出来的数据,赋到NHtml上。
使用phpexcel导的3000条数据的excel表 下载特别慢怎么办,求解决php导出大量数据到Excel,可以通过生成多个Excel文件,然后压缩成压缩包解决。 方案是:假如我们数据库有10w条数据,每2000条数据生成一个Excel文件,这样每次只要从数据库里查询出2000条数据即可,一定要分页去查询。
php 下载文档是否有限制, 超过2000条数据不能下载了。1.如果是下载Excel文件或者phpMyAdmin生成Sql文件,都是没有这个限制的
2.建议查看一下php.ini的执行时间设置max_execution_time = 300
3.用FireFox下载测试一下,它是断点续传的
说明:网速慢的时候,只能下载部分文件,特别是Chrome浏览器
php怎么导出大量数据的Excel,phpexcel1 $fp = fopen('php://output', 'a');
2
3 // 输出Excel列名信息
4 $head = array("邮件");
5 foreach ($head as $i => $v) {
6 // CSV的Excel支持GBK编码,一定要转换,否则乱码
7 $head[$i] = iconv('utf-8', 'gbk', $v);
8 }
9
10 // 将数据通过fputcsv写到文件句柄
11 fputcsv($fp, $head);
12
13 // 计数器
14 $cnt = 0;
15 // 每隔$limit行,刷新一下输出buffer,不要太大,也不要太小
16 $limit = 100000;
17
18 // 逐行取出数据,不浪费内存
19 $count = count($email);
20
21 for($t=0;$t<$count;$t++) {
22
23 $cnt ++;
24 if ($limit == $cnt) { //刷新一下输出buffer,防止由于数据过多造成问题
25 ob_flush();
26 flush();
27 $cnt = 0;
28 }
29 $row[] = $email[$t];
30 foreach ($row as $i => $v) {
31 $row[$i] = iconv('utf-8', 'gbk', $v);
32 }
33 fputcsv($fp, $row);
34 unset($row);
35 }
关于php下载大量数据的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php下载大量数据 php 点击下载的详细内容...