使用phpexcel導出excel文件

PHPExcel是一個第三方類庫,可以很方便地導出excel文檔。
首先要使用composer引入這個包:

composer require phpoffice/phpexcel

下面是一個demo:

$data1 = array(
            ['id'=>1,'username'=>'test1','phone'=>'18881515151'],
            ['id'=>2,'username'=>'test2','phone'=>'18881515152'],
            ['id'=>3,'username'=>'test3','phone'=>'18881515153'],
        );
   $sheetkey = array(
            'id'=>'A',
            'username'=>'B',
            'phone'=>'C',
        );
        $sheettitle = array(
            'id'=>'ID',
            'username'=>'答題人',
            'phone'=>'聯(lián)系方式',
        );
exportExcel($data,$sheetkey,$sheettitle,'問卷答題情況');


function exportExcel($data,$sheetkey,$sheettitle,$sheetName){
    //include_once "phpexcel/PHPExcel.php";
    $objPHPExcel = new PHPExcel();
    $objPHPExcel->getProperties()->setCreator("phpexcel")
        ->setLastModifiedBy("phpexcel")
        ->setTitle($sheetName)
        ->setSubject($sheetName)
        ->setDescription($sheetName)
        ->setKeywords($sheetName);
    $objPHPExcel->setActiveSheetIndex(0);
    $objSheet = $objPHPExcel->getActiveSheet();
    $objSheet->setTitle($sheetName);
    foreach ($sheettitle as $key => $value) {

        $objSheet->setCellValue($sheetkey[$key].'1',$value);
    }
    unset($value);
    $data = array_values($data);
    for ($i=0;$i<count($data);$i++) {
        foreach ($data[$i] as $key => $value) {
            $objSheet->setCellValue($sheetkey[$key].($i+2),$value);
        }
        unset($value);
    }

    header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
    header('Content-Disposition: attachment;filename="'.$sheetName.'.xlsx"');
    header('Cache-Control: max-age=0');
    header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
    header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
    header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
    header ('Pragma: public'); // HTTP/1.0

    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
    $objWriter->save('php://output');
    exit;
}

在瀏覽器運行代碼就會下載excel文件了


image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容