红眼占星馆
吾自幼聪慧过人,年二十余。 始从文,连考三届而不中。
遂习武,练武场上发一矢,中鼓吏,逐之出。 改学IT,自撰一函数,用之,堆栈溢出。

PHP 导出 csv

  //先模拟出数据
    $data = array(
        0 => array(1,'name1哈哈',date('Y-m-d')),
        1 => array(2,'name2哈哈',date('Y-m-d')),
        2 => array(3,'name3哈哈',date('Y-m-d')),
        3 => array(4,'name4哈哈',date('Y-m-d')),
        4 => array(5,'name5哈哈',date('Y-m-d')),
        5 => array(6,'name6哈哈',date('Y-m-d')),
        6 => array(7,'name7哈哈',date('Y-m-d')),
        7 => array(8,'name8哈哈',date('Y-m-d')),
        8 => array(9,'name9哈哈',date('Y-m-d')),
    );
    
    //$str = 'id,name,date\r\n';    //这样是错误的,会导致导出的csv不换行
    //设置表头
    $str = "id,name,date\r\n";
    
    //处理内容
    foreach($data as $item){
        $str .= $item['0'].",".$item['1'].",".$item['2']."\r\n";
    }
    
    header("Content-type:text/csv");  
    header("Content-Disposition:attachment;filename=".date('ymdHis').'.csv');//设置导出的文件名
    header('Cache-Control:must-revalidate,post-check=0,pre-check=0');  
    header('Expires:0');  
    header('Pragma:public');  
    echo $str;

刚开始我用的单引号,导出来的csv都没有换行,最后换成双引号,成功!

posted on 2017-03-29 21:48  东莞小公主【高三二班】  阅读(94)  评论(0)    收藏  举报