PHP7中文手册2018 带注释 最新chm版
方法/步骤
-
1.如果还没有使用过phpexcel的童鞋,先把这篇文章看一下,熟悉一下phpexcel的下载配置等,本文主要介绍插入图片;
phpexcel基础:
http://jingyan.baidu.com/article/915fc414f4c2e451384b205c.html
-
2.下面直接开始上代码吧,废话就不多说了,感觉自己写的注释还算可以,大家稍微看下都能明白的,嗯^_^;
<?php
/*引入phpexcel核心类文件*/
include '/phpexcel/PHPExcel.php';
/*实例化excel类*/
$excel = new PHPExcel();
/*实例化excel图片处理类*/
$objDrawing = new PHPExcel_Worksheet_Drawing();
-
3.
/*设置文本对齐方式*/
$excel->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$excel->getDefaultStyle()->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
$objActSheet = $excel->getActiveSheet();
$letter = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N');
/*设置表头数据*/
$tableheader = array('姓名', '性别', '年龄', '班级', '头像');
/*填充表格表头*/
for($i = 0;$i < count($tableheader);$i++) {
$excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");
}
-
4.
/*设置表格数据*/
$data = array(
array('小王', '男', '20', 'CS12', 'test.jpg'),
array('小李', '女', '21', 'CS12', 'test.jpg'),
array('小周', '男', '22', 'CS12', 'test.jpg'),
array('小赵', '女', '23', 'CS12', 'test.jpg'),
array('小张', '男', '24', 'CS12', 'test.jpg')
);
-
5.
/*填充表格内容*/
for ($i = 0;$i < count($data);$i++) {
$j = $i + 2;
/*设置表格宽度*/
$objActSheet->getColumnDimension("$letter[$i]")->setWidth(20);
/*设置表格高度*/
$excel->getActiveSheet()->getRowDimension($j)->setRowHeight(100);
/*向每行单元格插入数据*/
for ($row = 0;$row < count($data[$i]);$row++) {
if ($row == (count($data[$i]) -1 )) {
/*实例化插入图片类*/
$objDrawing = new PHPExcel_Worksheet_Drawing();
/*设置图片路径 切记:只能是本地图片*/
$objDrawing->setPath($data[$i][$row]);
/*设置图片高度*/
$objDrawing->setHeight(100);
/*设置图片要插入的单元格*/
$objDrawing->setCoordinates("$letter[$row]$j");
/*设置图片所在单元格的格式*/
$objDrawing->setOffsetX(80);
$objDrawing->setRotation(20);
$objDrawing->getShadow()->setVisible(true);
$objDrawing->getShadow()->setDirection(50);
$objDrawing->setWorksheet($excel->getActiveSheet());
continue;
}
$excel->getActiveSheet()->setCellValue("$letter[$row]$j","111");
}
}
-
6.
/*实例化excel输入类并完成输出excel文件*/
$write = new PHPExcel_Writer_Excel5($excel);
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="测试文件.xls"');
header("Content-Transfer-Encoding:binary");
$write->save('php://output');
-
7.下面是结果:看完之后大家可能觉得美中不足的是图片没有上下居中,其实这个问题我查了一个多小时资料之后也没查到啥方法,于是乎放弃了,如果大家查到了相关的文档,希望可以分享到评论里边,帮助别人,快乐自己!
-
8
8.一点小补充:图片必须为本地图片,这里的本地指的是你服务器,如果看页面的源码不爽的话,我把源文件
地址如下:
http://img.kuitao8.com/uploads/2014/0903/20140903111829861.zip
转载请注明:谷谷点程序 » phpexcel导出图片