phpexcel来做表格导出(多个工作sheet)

8 篇文章 0 订阅
6 篇文章 0 订阅
<?php
/**
 *  简单实用Execl
 */          
set_include_path('.'.get_include_path().PATH_SEPARATOR.dirname(__FILE__).'/PHPExecl/');
/* @func 引入类 */
require 'PHPExcel.php';
           
//模拟数据
$mulit_arr = array(
    array('标题1', '标题2', '标题3'),
    array('a', 'b', 'c'),
    array('d', 'e', 'f')
);
/* @实例化 */
$obpe = new PHPExcel();
           
/* @func 设置文档基本属性 */
$obpe_pro = $obpe->getProperties();
$obpe_pro->setCreator('midoks')//设置创建者
         ->setLastModifiedBy('2013/2/16 15:00')//设置时间
         ->setTitle('data')//设置标题
         ->setSubject('beizhu')//设置备注
         ->setDescription('miaoshu')//设置描述
         ->setKeywords('keyword')//设置关键字 | 标记
         ->setCategory('catagory');//设置类别
           
           
/* 设置宽度 */
//$obpe->getActiveSheet()->getColumnDimension()->setAutoSize(true);
//$obpe->getActiveSheet()->getColumnDimension('B')->setWidth(10);
           
//设置当前sheet索引,用于后续的内容操作
//在处理指定Sheet的时候,需要显示调用
//缺省情况下,PHPExcel会自动创建第一个SHEET,其索引SheetIndex=0
//设置 当前处于活动状态的SHEET 为PHPExcel自动创建的第一个SHEET
$obpe->setactivesheetindex(0);
//写入多行数据
foreach($mulit_arr as $k=>$v){
    $k = $k+1;
    /* @func 设置列 */
    $obpe->getactivesheet()->setcellvalue('A'.$k, $v[0]);//第A列 第$k行
    $obpe->getactivesheet()->setcellvalue('B'.$k, $v[1]);
    $obpe->getactivesheet()->setcellvalue('C'.$k, $v[2]);
}
           
//创建一个新的工作空间(sheet)
$obpe->createSheet();
$obpe->setactivesheetindex(1);
//写入多行数据
foreach($mulit_arr as $k=>$v){
    $k = $k+1;
    /* @func 设置列 */
    $obpe->getactivesheet()->setcellvalue('A'.$k, $v[0]);
    $obpe->getactivesheet()->setcellvalue('B'.$k, $v[1]);
    $obpe->getactivesheet()->setcellvalue('C'.$k, $v[2]);
}
           
//写入内容
$obwrite = PHPExcel_IOFactory::createWriter($obpe, 'Excel5');
//ob_end_clean();
//在本地保存文件
$obwrite->save('mulit_sheet.xls');
           
//或者 以下方式
/*******************************************
            直接在浏览器输出
*******************************************/
/**
header('Pragma: public');
header('Expires: 0');
header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
header('Content-Type:application/force-download');
header('Content-Type:application/vnd.ms-execl');
header('Content-Type:application/octet-stream');
header('Content-Type:application/download');
header("Content-Disposition:attachment;filename='mulit_sheet.xls'");
header('Content-Transfer-Encoding:binary');
$obwrite->save('php://output');
*/
?>

原文地址:http://www.cnblogs.com/yuwensong/p/3771787.html
您可以使用PHPExcel库来实现在PHP Laravel框架中导出多个sheet表。下面是一个简单的示例代码: ``` // 创建PHPExcel对象 $objPHPExcel = new PHPExcel(); // 创建第一个sheet表并设置标题 $objPHPExcel->setActiveSheetIndex(0); $objPHPExcel->getActiveSheet()->setTitle('Sheet1'); $objPHPExcel->getActiveSheet()->setCellValue('A1', 'Sheet1 Title'); // 创建第二个sheet表并设置标题 $objPHPExcel->createSheet(); $objPHPExcel->setActiveSheetIndex(1); $objPHPExcel->getActiveSheet()->setTitle('Sheet2'); $objPHPExcel->getActiveSheet()->setCellValue('A1', 'Sheet2 Title'); // 创建第三个sheet表并设置标题 $objPHPExcel->createSheet(); $objPHPExcel->setActiveSheetIndex(2); $objPHPExcel->getActiveSheet()->setTitle('Sheet3'); $objPHPExcel->getActiveSheet()->setCellValue('A1', 'Sheet3 Title'); // 导出Excel文件 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="example.xlsx"'); $objWriter->save('php://output'); ``` 在上面的示例中,我们首先创建了一个新的PHPExcel对象。然后使用setActiveSheetIndex()方法来切换到要创建的工作区,使用setTitle()方法设置工作区的标题,并使用setCellValue()方法设置工作区中的数据。最后,我们使用createWriter()方法将PHPExcel对象保存为Excel文件并输出到浏览器。您可以根据需要重复这个过程来创建更多的工作区。 请注意,此示例使用的是PHPExcel库,这是一个强大的PHP库,用于创建、读取和操作Excel文件。但是,PHPExcel项目已经停止维护,因此我建议您使用其他替代库,例如PhpSpreadsheet,它是PHPExcel的后继者。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值