php大量数据导出怎么做,php导出大量数据到excel

PHP导出100万数据到excel

php导出数据excel有专门的库,当导出少量数据的时候速度很快,但是当数据量大的时候就会存在服务器内存不够之类的。

“真诚服务,让网络创造价值”是我们的服务理念,创新互联团队10多年如一日始终坚持在网站建设领域,为客户提供优质服。不管你处于什么行业,助你轻松跨入“互联网+”时代,PC网站+手机网站+公众号+小程序开发

所以在导出大量数据的时候就应该分页查询数据,避免服务器宕机。正好PHP提供了fputcsv函数可以将数据写入到csv文件中。

这样我们就可以使用PHP对数据进行分页查询,再写入到csv文件中。

php怎么导出大量数据的Excel

不带格式的:

1、 直接写csv文件。

2、COM调用adodb操作excel读取

想要带格式的标准xls文件:

请用COM调用adodb读取,然后调用excel.application格式化。

其他的方法就是扯淡,别给我说

1、phpexcel,那资源消耗只适合玩单机,兼容性也不够!

2、pear的可以带格式输出,但兼容性很差,经常打不开

3、xml方式,制作模板 比较费时。

总结:不带格式,就用csv最简单

想带格式就用adodb+excel.application来操作,(注意:excel 格式化很慢,adodb导出很快,带格式写excel就是个悲剧!)

如何用php导出导入大数据库

在使用PhpMyAdmin的时候经常用到数据的导入和导出(Export/Import),但是在导入大数据的时候由于php上传文件的限制和脚本响应时间的限制,导致phpMyAdmin无法导入大数据。很多时候都是由于文件过大,从本地浏览上传导入,容易中断失败,有没有更好的方法呢?

方法:

在phpMyAdmin的目录下,找到根目录的config.inc.php文件,

打开config.inc.php文件,查找$cfg['UploadDir'],这个参数就是设定导入文件存放的目录,这里把值设定为:ImportSQLFile。

在phpMyAdmin目录下,建立以ImportSQLFile命名的文件夹,

把我们需要导入的数据文件,放到ImportSQLFile文件夹下面,非常简单,

登入phpMyAdmin,选择需要导入的数据,点击导航条上面的“导入”按钮,

选中“从网站服务器上传文件夹ImportSQLFile/中选择:”选项,并需要导入的数据文件,

最后点击“执行”,即可导入成功。

注意事项

如果在config.inc.php文件,没有找到$cfg['UploadDir'],可以自己在文件中添加上去即可。

php怎么导出大量数据的Excel,phpexcel

1 $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怎么导入大量数据的excel

php导出大量数据的Excel:

PHP从数据库分多次读取100万行记录,和分多次将100万行写入文本文件都没问题

Excel可以支持100万行记录,Excel 2003最大支持65536行,从2007版开始支持104万行了,目前2007的盗版应该比较普及了-_-! 问清楚客户是什么版本。

要导出excel的理由是非常充分和正确的,应该继续坚持。业务人员最熟悉的就是Excel,实在不熟悉现学现用也比别的快。只是要注意,当数据量达到10万行这个级别时,Excel的公式填充将会非常非常慢,如果再有LOOKUP()公式,基本上十分钟内处理CPU满载进程管理器杀不掉的状态,这时候其实xampp + phpmyadmin是一个易用性和性能都最平衡的选择

PHPExcel输出的是Excel XML格式,有个XML头和尾,中间是数据Body,需要将100万行都赋值给一个数组才可以调用PHPExcel-write(),这容易导致PHP执行超时或者内存超限,不妨调整一下php.ini配置,把超时时间和内存限制都改到很大

如果是输出csv格式,那就太简单了,你的问题可能是没给字段内容加引号,加上引号再调用fputcsv试试?其实fputcsv做的事情特别简单,你甚至可以不管它,自己把CSV文件的每一行拼接好了之后用file_put_contents写入


网页标题:php大量数据导出怎么做,php导出大量数据到excel
URL网址:http://azwzsj.com/article/hshocc.html