博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php导出大数据excel
阅读量:6000 次
发布时间:2019-06-20

本文共 977 字,大约阅读时间需要 3 分钟。

hot3.png

    require('./db.class.php');

    $DB = new db();
    $DB->connect();//数据库链接
    header("Content-Type: text/csv");
    header("Content-Disposition:filename=php100.csv");
    $sql = "select order_sn,consignee,address,tel,mobile,email,order_amount,add_time from order_info";//查询数据
    $order = $DB->fetch_all($sql);
    // 打开PHP文件句柄,php://output 表示直接输出到浏览器
    $fp = fopen('php://output', 'a');
    // 输出Excel列名信息
    foreach($order[0] as $key=>$value){
        $head[] = iconv('utf-8', 'gbk', $key);//头信息
    }
    // 将数据通过fputcsv写到文件句柄
    //fputcsv($fp, $head);
    // 计数器
    $cnt = 0;
    // 每隔$limit行,刷新一下输出buffer,不要太大,也不要太小
    $limit = 100000;
    // 逐行取出数据,不浪费内存
    $count = count($order);
    for($t=0;$t<$count;$t++) {
        $cnt ++;
        if ($limit == $cnt) { //刷新一下输出buffer,防止由于数据过多造成问题
            ob_flush();
            flush();
            $cnt = 0;
        }
        foreach ($order[$t] as $i => $v) {
            if($i == 'add_time') {
                $row[$i] = iconv('utf-8', 'gbk', date('Y-m-d H:i:s',$v));
            }else{
                $row[$i] = iconv('utf-8', 'gbk', $v);
            }
        }
        fputcsv($fp, $row);
        unset($row);
    }

转载于:https://my.oschina.net/u/588516/blog/484307

你可能感兴趣的文章
java Date和String转换总结
查看>>
GREENPLUM简单介绍
查看>>
[Bhatia.Matrix Analysis.Solutions to Exercises and Problems]ExI.2.6
查看>>
HTTP Analyzer——WEB调试代理
查看>>
shell date 命令整理
查看>>
史上最全Java表单验证封装类
查看>>
nuget命令的用法:
查看>>
矩阵构造方法(转载)
查看>>
UIView下使用Animation控制动画
查看>>
Lowest Common Ancestor of Two Nodes in a Binary Tree
查看>>
(笔记)Linux 如何查看线程数最佳解决方案
查看>>
careercup-排序和查找 11.5
查看>>
Tomcat 生产服务器性能优化
查看>>
【开源一个小工具】一键将网页内容推送到Kindle
查看>>
Android -- Gradle
查看>>
Java的递归算法
查看>>
iis7负载均衡
查看>>
Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter
查看>>
程序员必须知道的几个Git代码托管平台
查看>>
MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突
查看>>