PHPExcel代碼

ktkr5003 8年前發布 | 974 次閱讀 PHP

php導出excel的

[PHP]代碼

vendor("PHPExcel176.PHPExcel");
        // Create new PHPExcel object
        $objPHPExcel = new PHPExcel();
        // Set properties
        $objPHPExcel->getProperties()->setCreator("ctos")
            ->setLastModifiedBy("ctos")
            ->setTitle("Office 2007 XLSX Test Document")
            ->setSubject("Office 2007 XLSX Test Document")
            ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
            ->setKeywords("office 2007 openxml php")
            ->setCategory("Test result file");
        //set width
        $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(80);
        $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(80);
        $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(80);
        $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(80);
        $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(80);
        $objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(80);
        //設置行高度
        //$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(22);
        //$objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(20);
        //set font size bold
        $objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);
        //$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getFont()->setBold(true);
        //$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
        //$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
        //設置水平居中
        //$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('D')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('F')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        //合并cell
        //$objPHPExcel->getActiveSheet()->mergeCells('A1:F1');
        //set font size bold
        //$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);
        //$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getFont()->setBold(true);
        //$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
        //$objPHPExcel->getActiveSheet()->getStyle('A2:F2')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);??????????
        $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('D')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $objPHPExcel->getActiveSheet()->getStyle('F')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        //???cell
        $objPHPExcel->getActiveSheet()->mergeCells('A1:F1');
        // set table header content
        $objPHPExcel->setActiveSheetIndex(0)
           ->setCellValue('A1', iconv("utf-8","gb2312","訂單數據匯總  時間:'.date('Y-m-d H:i:s')"))
            ->setCellValue('A2', iconv("utf-8","gb2312","訂單ID"))
            ->setCellValue('B2', iconv("utf-8","gb2312","下單人"))
            ->setCellValue('C2', iconv("utf-8","gb2312","客戶名稱"))
            ->setCellValue('D2', iconv("utf-8","gb2312","下單時間"))
            ->setCellValue('E2', iconv("utf-8","gb2312","需求機型"))
            ->setCellValue('F2', iconv("utf-8","gb2312","需求數量"));
        // Miscellaneous glyphs, UTF-8
      for($i=0;$i<count($OrdersData)-1;$i++){
            $objPHPExcel->getActiveSheet(0)->setCellValue('A'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['id']));
            $objPHPExcel->getActiveSheet(0)->setCellValue('B'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['reid']));
            $objPHPExcel->getActiveSheet(0)->setCellValue('C'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['topid']));
            //$objPHPExcel->getActiveSheet(0)->setCellValue('D'.($i+3), iconv('utf-8','gb2312',toDate($OrdersData[$i]['typename']))); //?????????common.php??????
            $objPHPExcel->getActiveSheet(0)->setCellValue('D'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['typename']));
            $objPHPExcel->getActiveSheet(0)->setCellValue('E'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['typelink']));
            $objPHPExcel->getActiveSheet(0)->setCellValue('F'.($i+3),  iconv("utf-8","gb2312",$OrdersData[$i]['keyword']));
            //$objPHPExcel->getActiveSheet()->getStyle('A'.($i+3).':F'.($i+3))->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
            //$objPHPExcel->getActiveSheet()->getStyle('A'.($i+3).':F'.($i+3))->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
            //$objPHPExcel->getActiveSheet()->getRowDimension($i+3)->setRowHeight(16);
        }
        //  sheet
        $objPHPExcel->getActiveSheet()->setTitle( iconv("utf-8","gb2312",'訂單匯總表'));
        // Set active sheet index to the first sheet, so Excel opens this as the first sheet
        $objPHPExcel->setActiveSheetIndex(0);
        // excel頭參數
        header('Content-Type: application/vnd.ms-excel; charset=utf-8');
        header('Content-Type: application/force-download');
        header('Content-Type: application/octet-stream');
        header('Content-Type: application/download');
        //header('Content-type:charset=utf-8);
        //header('Content-Transfer-Encoding: utf-8');
        header('Content-Disposition: attachment;filename='.iconv("utf-8","gb2312","訂單匯總".date('Ymd-His').".xls"));  //日期為文件名后綴
        //header('Cache-Control: max-age=0');
        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'excel5');  //excel5為xls格式,excel2007為xlsx格式
        $objWriter->save('php://output');
 本文由用戶 ktkr5003 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!