通过引入phpexcel库,就可以使用phpexcel提供的工具来创建excel表格,在报表制作中非常实用,可以用于系统后台batch中表格的制作。

$objPHPExcel
    ->getProperties()  //获得文件属性对象,给下文提供设置资源
    ->setCreator( "Maarten Balliauw")                //设置文件的创建者
    ->setLastModifiedBy( "Maarten Balliauw")        //设置最后修改者
    ->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");        //设置类别
// 给表格添加数据
$objPHPExcel->setActiveSheetIndex(0)    //设置第一个内置表(一个xls文件里可以有多个表)为活动的
    ->setCellValue( 'A1', 'Hello' )    //给表的单元格设置数据
    ->setCellValue( 'B2', 'world!' )    //数据格式可以为字符串
    ->setCellValue( 'C1', 12)    //数字型
    ->setCellValue( 'D2', 12)    //
    ->setCellValue( 'D3', true )    //布尔型
    ->setCellValue( 'D4', '=SUM(C1:D2)' );    //公式
//创建一个新工作表,并设置活动
$objPHPExcel->createSheet();  
$objPHPExcel->setActiveSheetIndex(1);
  
//得到当前活动的表
$objActSheet = $objPHPExcel->getActiveSheet();

//内容自适应
$objActSheet->getColumnDimension('A')->setAutoSize(true);

//设置背景色
$objActSheet->getStyle('N')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objActSheet->getStyle('N')->getFill()->getStartColor()->setARGB('FFFFFF00');

//左右居中
$objActSheet->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

//上下居中
$objActSheet->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

//合并单元格
$objActSheet->mergeCells("A1:A12");

//设置标签title
$objActSheet->setTitle('sheet1');

//写出文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save(str_replace('.php', '.xlsx', __FILE__));

phpexcel下载地址

最后修改:2019 年 11 月 13 日
如果觉得我的文章对你有用,请随意赞赏