php 导出Excel 不用安装插件、开启配置


function export_csv($filename, $data)
    {
        header("Content-type:text/csv");
        header("Content-Disposition:attachment;filename=" . $filename);
        header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
        header('Expires:0');
        header('Pragma:public');
        echo $data;
    }


//csv导出
    /*
     * 导出Excel
     */
    public function output()
    {
        $org         = Db::name('organization')->select();
        $list['one'] = Db::name('transfer_flow')->order('add_time desc')->select();
        foreach ($list['one'] as $k => $v) {
            foreach ($org as $kk => $vv) {
                if ($v['org_id'] == $vv['id']) {
                    $list['one'][$k]['org_id'] = $vv['name'];
                }
            }
            if ($v['pay_type'] === 'WX') {
                $list['one'][$k]['pay_type'] = '微信';
            } else if ($v['pay_type'] === 'A') {
                $list['one'][$k]['pay_type'] = '支付宝';
            } else {
                $list['one'][$k]['pay_type'] = '银行转账';
            }
        }
        $str = "订单号,加盟商,金额,支付方式,添加时间\n";
        $str = iconv('utf-8','gb2312',$str);
        foreach($list['one'] as $k => $v){
            $order_no = iconv('utf-8','gb2312',$v['order_no']);
            $org_id = iconv('utf-8','gb2312',$v['org_id']);
            $pay_type = iconv('utf-8','gb2312',$v['pay_type']);
            $str .= $order_no . ',' . $org_id . ',' . $v['money'] . ',' . $pay_type . ',' . $v['add_time'] . "\n";
        }
        $filename = '财务管理_'.date('Ymd').'.csv'; //设置文件名
        $this->export_csv($filename,$str); //导出
    } 导出csv

原文地址:https://segmentfault.com/a/1190000016116593

posted @ 2018-11-17 17:21  sfornt  阅读(523)  评论(0编辑  收藏  举报