当前位置 : 主页 > 网络编程 > PHP >

php使用PHPExcel导出excel代码

来源:互联网 收集:自由互联 发布时间:2021-07-03
vendor("PHPExcel176.PHPExcel"); // Create new PHPExcel object $objPHPExcel = new PHPExcel(); // Set properties $objPHPExcel-getProperties()-setCreator("ctos") -setLastModifiedBy("ctos") -setTitle("Office 2007 XLSX Test Document") -setSubjec
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');
网友评论