zoukankan      html  css  js  c++  java
  • 导出大量数据到excel表

    set_time_limit(0);
    error_reporting(0);

    // 输出Excel文件头,可把user.csv换成你要的文件名
    header('Content-Type: application/vnd.ms-excel');
    header('Content-Disposition: attachment;filename="user.csv"');
    header('Cache-Control: max-age=0');

    $fp = fopen('/tmp/export/data.csv', 'a');
    $head = array('UID', 'EMAIL', '注册时间', '第一次登陆时间');
    foreach ($head as $i => $v) {
    // CSV的Excel支持GBK编码,一定要转换,否则乱码
    $head[$i] = iconv('utf-8', 'gbk', $v);
    }
    fputcsv($fp, $head);

    $result = array(.................................);

    foreach($resutl as $val){
    ob_flush();
    flush();

    // 从数据库中获取数据,为了节省内存,不要把数据一次性读到内存,从句柄中一行一行读即可
    $sql = "SELECT uid,email,regdate,lastlogintime FROM reg_members WHERE email in ($val) ORDER BY uid ASC, regdate ASC";
    $query = $db_reg_read -> query($sql);
    while ($res = $db_reg_read -> fetch_array($query)) {
    $email = strtolower($res['email']);
    $list[] = $res;
    }

    //对数据进行整理

    //输入到CSV中
    foreach($list as $key => $val){
    $row[0] = iconv('utf-8', 'gbk', $val['uid']);
    $row[1] = iconv('utf-8', 'gbk', $val['email']);
    $row[2] = iconv('utf-8', 'gbk', $val['regdate']);
    $row[3] = iconv('utf-8', 'gbk', $val['lastlogintime']);
    fputcsv($fp, $row);
    }
    }

  • 相关阅读:
    怎样查看Oracle的数据库名称sid
    request.getRemoteAddr request.getRemoteHost()
    Oracle中添加自动编号的序列
    google chrome 快捷键
    MyEclipse快捷键大全( 再排版)
    Java正则表达式应用详解
    Spring3.1 Cache注解
    Java本周总结1.
    jquery ui 自动补全
    用字符串的length实现限制文本框长度
  • 原文地址:https://www.cnblogs.com/gide/p/4437950.html
Copyright © 2011-2022 走看看