zoukankan      html  css  js  c++  java
  • php导出数据到csv文件

    $count = M('revieworder')->where($map)->count();
    set_time_limit(0);
    ini_set('memory_limit', '256M');
    $filename = '预约' . time() . '.csv';
    header("Content-type:text/csv");
    header('Content-Disposition: attachment;filename="' . $filename . '"');
    header('Cache-Control: max-age=0');
    // 打开PHP文件句柄,php://output 表示直接输出到浏览器
    $fp = fopen('php://output', 'a');
    $head = array('编号','姓名','手机号','预约日期','***','区域','短信发送','备注','申请时间');
    foreach ($head as $i => $v) {
    // CSV的Excel支持GBK编码,一定要转换,否则乱码
    $head[$i] = iconv('utf-8', 'gbk', $v);
    }
    // 将数据通过fputcsv写到文件句柄
    fputcsv($fp, $head);
    // 从数据库中获取数据,为了节省内存,不要把数据一次性读到内存,从句柄中一行一行读即可
    $limit = 10000;
    for ($i = 0; $i < $count; $i = $i + $limit) {
    $list = M('revieworder')->where($map)->order('createtime desc')->limit($i, $limit)->select();
    foreach ($list as $k => $val) {
    $rows[0] = iconv('utf-8', 'gbk', $k + 1);
    $rows[1] = iconv('utf-8', 'gbk', " " . $val['realname']);
    $rows[2] = iconv('utf-8', 'gbk', $val['mobile']);
    $rows[3] = iconv('utf-8', 'gbk', " " . getSubstr($val['orderdate'],0,10).' '.$val['amorpm']);
    $rows[4] = iconv('utf-8', 'gbk', $val['subject']);
    $rows[5] = iconv('utf-8', 'gbk', $val['area']);
    $rows[6] = iconv('utf-8', 'gbk', $val['issend'] == '1'?'已发送':'未发送');
    $rows[7] = iconv('utf-8', 'gbk', $val['note']);
    $rows[8] = iconv('utf-8', 'gbk', time_format($val['createtime']));
    fputcsv($fp, $rows);
    unset($rows);
    }
    ob_flush();
    flush(); //刷新buffer
    }
    exit;
  • 相关阅读:
    学习八数码拓展
    jzoj4762. 千帆渡
    jzoj5354. 导弹拦截
    学习上下界网络流小记
    jzoj2702. 探险&jzoj3917. 【NOIP2014模拟11.2A组】福慧双修
    jzoj100048. 紧急撤离
    jzoj100045. 好数
    jzoj3327. 陶陶的难题
    2368. 黑白棋
    学习类欧几里得小记
  • 原文地址:https://www.cnblogs.com/wenxinphp/p/7094559.html
Copyright © 2011-2022 走看看