本次实现PHP导出Excel文件使用的是PHP开源程序PHPExcel,部分关键代码分享给大家,具体内容如下
<?phperror_reporting(E_ALL);date_default_timezone_set("Asia/Shanghai");require_once "./Classes/PHPExcel.php";$data=array( 0=>array( "id"=>1001, "username"=>"张飞", "password"=>"123456", "address"=>"三国时高老庄250巷101室" ), 1=>array( "id"=>1002, "username"=>"关羽", "password"=>"123456", "address"=>"三国时花果山" ), 2=>array( "id"=>1003, "username"=>"曹操", "password"=>"123456", "address"=>"延安西路2055弄3号" ), 3=>array( "id"=>1004, "username"=>"刘备", "password"=>"654321", "address"=>"愚园路188号3309室" ));$objPHPExcel=new PHPExcel();$objPHPExcel->getProperties()->setCreator("//www.rzxsoft.cn") ->setLastModifiedBy("//www.rzxsoft.cn") ->setTitle("Office 2007 XLSX Document") ->setSubject("Office 2007 XLSX Document") ->setDescription("Document for Office 2007 XLSX, generated using PHP classes.") ->setKeywords("office 2007 openxml php") ->setCategory("Result file");$objPHPExcel->setActiveSheetIndex(0) ->setCellValue("A1","ID") ->setCellValue("B1","用户名") ->setCellValue("C1","密码") ->setCellValue("D1","地址");$i=2; foreach($data as $k=>$v){ $objPHPExcel->setActiveSheetIndex(0) ->setCellValue("A".$i,$v["id"]) ->setCellValue("B".$i,$v["username"]) ->setCellValue("C".$i,$v["password"]) ->setCellValue("D".$i,$v["address"]); $i++;}$objPHPExcel->getActiveSheet()->setTitle("三年级2班");$objPHPExcel->setActiveSheetIndex(0);$filename=urlencode("学生信息统计表")."_".date("Y-m-dHis"); //生成xlsx文件/*header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");header("Content-Disposition: attachment;filename="".$filename.".xlsx"");header("Cache-Control: max-age=0");$objWriter=PHPExcel_IOFactory::createWriter($objPHPExcel,"Excel2007");*///生成xls文件header("Content-Type: application/vnd.ms-excel");header("Content-Disposition: attachment;filename="".$filename.".xls"");header("Cache-Control: max-age=0");$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel5");$objWriter->save("php://output");exit;
注意:如果导出中文时出现乱码,可以尝试将字符串转换成gb2312,代码类似如下:
查看代码打印
$str=mb_convert_encoding("gb2312","UTF-8",$str);
以上就是本文的全部内容,希望对大家的学习有所帮助。