1. 程式人生 > >PHP csv匯出表格

PHP csv匯出表格

public function putCsv($csvFileName, $dataArr ,$haderText = ''){
        $handle = fopen($csvFileName,"w");//寫方式開啟
        if(!$handle){
            return '檔案開啟失敗';
        }

        $csv_data = '';
        //判斷是否定義頭標題
        if(!empty($haderText)){
            foreach ($haderText as $key => $value) {
                $haderText[$key] = iconv("utf-8","gbk//IGNORE",$value);//對中文編碼進行處理
                $csv_data .= $haderText[$key].',';
            }
            $csv_data .= PHP_EOL;
        }

        foreach ($dataArr as $key => $value) {
            foreach ($value as $k => $v) {
                $value[$k] = iconv("utf-8","gbk//IGNORE",$v);//對中文編碼進行處理
                $csv_data .= $value[$k].',';
            }
            $csv_data .= PHP_EOL;
        }
        fclose($handle);

        header("Content-type:text/csv;");
        header("Content-Disposition:attachment;filename=" . $csvFileName);
        header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
        header('Expires:0');
        header('Pragma:public');
        echo $csv_data;
    }
public function actionExport()
    {
        //匯出表格
        $head = array('編號','姓名','年齡','出生年月');
        $data = array(
            array('001','zs',10,'1991-1-1'),
            array('002','李四',10,'1991-1-1'),
            array('003','王五',10,'1991-1-1'),
        );
        $this->putCsv('putCsv.csv', $data, $head);

    }