您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP导出带样式的Excel文件的示例代码

2025/8/15 14:44:39发布12次查看
array( array('time' => '09:00', 'event' => '公司例会例会'), array('time' => '14:00', 'event' => '部门例会') ), 'tuesday' => array( array('time' => '09:30', 'event' => '和 mr. stinsen 早餐')), 'wednesday' => array(array('time' => '12:10', 'event' => '市场中阶报告'), array('time' => '15:30', 'event' => '市场部战略部署会议') ), 'thursday' => array( array('time' => '', 'event' => '')), 'friday' => array( array('time' => '16:00', 'event' => 'woc stock 研讨会'), array('time' => '17:00', 'event' => '飞往华尔街'), array('time' => '21:00', 'event' => '会见克林顿')) ); /* *** *** */ $workbook = new spreadsheet_excel_writer(); $filename = date('ymdhis').'.xls';//csv $workbook->send($filename); // 发送 excel 文件名供下载 $workbook->setversion( 8 ); $sheet = &$workbook->addworksheet(sheet1); // 创建工作表 $sheet->setinputencoding('utf-8'); // 字符集 $headformat = &$workbook->addformat(array('size' => 14, 'align' => 'center','color' => 'white', 'fgcolor' => 'brown', 'bold'=>'1', 'border' => '1'));//定义格式 $dayformat = &$workbook->addformat(array('size' => 12, 'align' => 'center', 'valign' => 'vcenter', 'fgcolor' => 'green', 'color' => 'white', 'border' => '1'));//定义格式 $dataformat = &$workbook->addformat(array('size' => 10, 'align' => 'left', 'border' => '1', 'color' => 'black', 'fgcolor'=> 'cyan'));//定义格式 $sheet->setcolumn(0, 0, 20); // 设置宽度 $sheet->setcolumn(1, 1, 15); // 设置宽度 $sheet->setcolumn(2, 2, 30); // 设置宽度 $r = 0; $sheet->write(0, $r, $head, $headformat); // 表格标题 $sheet->mergecells(0, 0, 0, 2); // 跨列显示 $r++; // 数据从第2行开始 foreach ($data as $day => $events){ $c = 0; $sheet->write($r, $c, $day, $dayformat); if (!$events){ // 当天没有计划 $r++; } else { $startrow = $r; foreach ($events as $e){ $c = 1; $sheet->write($r, $c++, $e['time'], $dataformat); // 工作表写入数据 $sheet->write($r, $c++, $e['event'], $dataformat); // 工作表写入数据 $r++; } // 合并 $day 单元格 $sheet->mergecells($startrow, 0, $r - 1, 0); } } $workbook->close(); // 完成下载 ?>
复制代码
代码说明:$sheet = &$workbook->addworksheet(sheet1); // 创建工作表,返回工作表的调用。可以在一个excel工作簿中创建多个工作表。$headformat = &$workbook->addformat($param); // 创建一个格式,有下面的可用格式,参考官方说明 http://pear.php.net/manual/en/package.fileformats.spreadsheet-excel-writer.spreadsheet-excel-writer-workbook.addformat.phpalign
bold
bottom
top
left
right
border
bordercolor
bottomcolor
topcolor
rightcolor
leftcolor
fgcolor
bgcolor
color
pattern
underline
textrotation
size
numformat
script
$workbook->send($filename); // 发送http header,准备下载,$filename 下载的文件名sheet->setcolumn($startcol, $endcol, $width); // 设置列宽度$sheet->write($row, $col, $data, $format); // 工作表写入数据,$row 写入的行号,从0开始$col 写入的列号,从0开始$data 数据$format 使用addformat() 创建的样式$sheet->mergecells($startrow, $startcol, $endrow, $endcol); // 合并单元格$workbook->close(); // 完成下载
就是这些了,有时间的话,保存以上代码为xxx.php,自行测试下,看看效果如何,毕竟编程重在动手嘛。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product