PHPExcel 导出包含图片excel
<?php
// 这里用的PHPExcel版本号为1.8.0
// 下载地址https://github.com/PHPOffice/PHPExcel 下载ZIP压缩包
// 下载后将Classes文件夹提取出来供后续使用 /*
原插件存放目录结构
根目录下Classes
--PHPExcel文件夹
--PHPExcel.php文件
*/
/** Include PHPExcel */
require_once '/Classes/PHPExcel.php';
/*
在thinkPHP中 将Classes文件夹重命名成PHPExcel,放到目录 ThinkPHP/Library/Vendor下
存放到thinkPHP中后目录结构
根目录下ThinkPHP
--Library
--Vendor
--PHPExcel
--PHPExcel文件夹
--PHPExcel.php文件
*/ // 在thinkPHP中包含PHPExcel.php文件方式
// vendor('PHPExcel.PHPExcel');
// 并且在thinkPHP中调用插件的所有类名前加反斜杠 \ // Create new PHPExcel object
$objPHPExcel = new \PHPExcel (); // Set document properties
$objPHPExcel->getProperties ()->setCreator ( "zend" )-> // 作者
setLastModifiedBy ( "zend" )-> // 最后一次保存者
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->getActiveSheet ()->getColumnDimension ( 'A' )->setWidth ( '15' ); // 设置列宽度
$objPHPExcel->getActiveSheet ()->getColumnDimension ( 'B' )->setWidth ( '30' );
$objPHPExcel->getActiveSheet ()->getColumnDimension ( 'C' )->setWidth ( '30' );
$objPHPExcel->getActiveSheet ()->getColumnDimension ( 'D' )->setWidth ( '20' ); // Add some data
$objPHPExcel->setActiveSheetIndex ( 0 )
->setCellValue ( 'A1', '手机号码' ) // 第一行A列值
->setCellValue ( 'B1', '姓名' ) // 第一行B列值
->setCellValue ( 'C1', '图片' ) // 第一行C列值
->setCellValue ( 'D1', '提交时间' ); // 第一行D列值 // 从此开始行数可在循环中累加
$objPHPExcel->setActiveSheetIndex ( 0 )
->setCellValue ( 'A' . '2', ' ' . '12345678910' ) // 第二行A列值
->setCellValue ( 'B' . '2', ' ' . '用户名' ); // 第二行B列值 /* 实例化插入图片类 */
$objDrawing = new \PHPExcel_Worksheet_Drawing ();
/* 设置图片路径 切记:只能是本地图片 */
$objDrawing->setPath ( './img/test.jpg' );
/* 设置图片高度 */
$objDrawing->setHeight ( 100 );
/* 设置图片要插入的单元格位置 */
$objDrawing->setCoordinates ( 'C' . '2' ); // 这里第二行C列
// 写入图片在指定格中的X坐标值
$objDrawing->setOffsetX ( 20 );
// 写入图片在指定格中的Y坐标值
$objDrawing->setOffsetY ( 20 );
// 设置旋转角度
// $objDrawing->setRotation(20);
$objDrawing->getShadow ()->setVisible ( true );
$objDrawing->getShadow ()->setDirection ( 50 );
$objDrawing->setWorksheet ( $objPHPExcel->getActiveSheet () ); // 设置单元格高度
$objPHPExcel->getActiveSheet ()->getRowDimension ( $key + 2 )->setRowHeight ( 100 ); $objPHPExcel->setActiveSheetIndex ( 0 )->setCellValue ( 'D' . '2', ' ' . '2017-08-24 16:01' ); // 第二行D列值
// 如果循环添加行,则此处循环终止 // Rename worksheet
$objPHPExcel->getActiveSheet ()->setTitle ( 'Simple' ); // Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex ( 0 ); // 重定向输出到客户端的Web浏览器 (Excel2007)
header ( 'Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' );
header ( 'Content-Disposition: attachment;filename="测试文件名.xlsx"' );
header ( 'Cache-Control: max-age=0' );
// 如果是IE9浏览器,则需要下面这条
header ( 'Cache-Control: max-age=1' ); // 如果是带SSL的IE,则可能用到下面这条
header ( 'Expires: Mon, 26 Jul 1997 05:00:00 GMT' ); // 过去的日期
header ( 'Last-Modified: ' . gmdate ( 'D, d M Y H:i:s' ) . ' GMT' ); // 实时时间
header ( 'Cache-Control: cache, must-revalidate' ); // HTTP/1.1
header ( 'Pragma: public' ); // HTTP/1.0 $objWriter = \PHPExcel_IOFactory::createWriter ( $objPHPExcel, 'Excel2007' );
$objWriter->save ( 'php://output' );
PHPExcel 导出包含图片excel的更多相关文章
- php 使用PHPExcel 导出数据为Excel
<?php require_once 'PHPExcel/Classes/PHPExcel.php'; /** * 导出数据为Excel * @param array $fieldArr 标题数 ...
- 导出包含图片的excel、word、pdf 笔记
/** * 导出word * @throws Exception */ @Override public byte[] WordExport( List<VbLibGlobalAnalyList ...
- PHP:引用PhpExcel导出数据到excel表格
我使用的是tp3.2框架(下载地址:http://www.thinkphp.cn/topic/38123.html) 1.首先要下载PhpExcel类库,放在如下图目录下 2.调用方法 public ...
- PHPExcel导出插入图片和居中问题
首先到网上先下载PHPExcel 下载后解压得到这两个文件 下载后引用该文件 最后编写相关代码: 首先是图片插入导出 $objDrawing = new PHPExcel_Worksheet_Draw ...
- phpexcel导出数据库成excel文件
<?php error_reporting(E_ALL); date_default_timezone_set('Europe/London'); /** PHPExcel */ require ...
- CodeIgniterCodeigniter+PHPExcel导出数据到Excel文件
解压压缩包里的Classes文件夹中的内容到application\libraries\目录下,目录结构如下:--application\libraries\PHPExcel.php--applica ...
- phpexcel如何读取excel的数据和如何导出数据到excel
phpexcel如何读取excel的数据和如何导出数据到excel 一.总结 一句话总结:去官网看参考手册和api,或者找中文的博客或者参考手册 1.phpexcel插件如何下载? 其实这些插件不仅可 ...
- 利用PHPExcel读取Excel的数据和导出数据到Excel
PHPExcel是一个PHP类库,用来帮助我们简单.高效实现从Excel读取Excel的数据和导出数据到Excel.也是我们日常开发中,经常会遇到的使用场景.比如有个客户信息表,要批量导出发给同事,我 ...
- thinkphp3.2.3 excel导出,下载文件,包含图片
关于导出后出错的问题 https://segmentfault.com/q/1010000005330214 https://blog.csdn.net/ohmygirl/article/detail ...
随机推荐
- 搭建基本的React Native开发环境
步骤如下: 1.安装HomeBrew,命令如下: 在终端输入命令:$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Home ...
- iOS之UIImagePickerController显示中文界面
iOS开发中,我们经常遇到获取拍照.相册中图片的功能,就必然少不了UIImagePickerController,但是我们发现当我们使用它的时候,它的页面是英文的,看着很别扭,国人还是比较喜欢看中文界 ...
- noip2018 洛谷 P1969积木大赛
1 //一定不要忘记这句话 “连续区间 ”!! #include<bits/stdc++.h> using namespace std; int main(){ int n, h;//n是 ...
- oracle优化-leading提示和ordered提示以及materialize提示
以下内容适用于oracle 10.2.0.5及其以上版本 一个查询很慢,原始SQL如下: select a.* from (select ssi.ID, 'small_station_info' TB ...
- vue路由回退判断
在页面一开始加上一个全局的函数: activated: function () { this.$setgoindex() } 这个函数是这样的,判断当前页面的历史记录是不是小于等于1,如果小于等于1, ...
- Java源码解析——集合框架(四)——LinkedListLinkedList原码分析
LinkedList源码分析 LinkedList也和ArrayList一样实现了List接口,但是它执行插入和删除操作时比ArrayList更加高效,因为它是基于链表的.基于链表也决定了它在随机访问 ...
- 一次 group by + order by 性能优化分析
一次 group by + order by 性能优化分析 最近通过一个日志表做排行的时候发现特别卡,最后问题得到了解决,梳理一些索引和MySQL执行过程的经验,但是最后还是有5个谜题没解开,希望大家 ...
- Spark-源码-TaskScheduler初始化过程, ClientActor向Master发送注册任务信息过程
Spark版本 1.3 Spark源码 Spark.createTaskScheduler TaskScheduler初始化过程 1.// SparkContext中 /** * Create a t ...
- STL——list
1.关键概述 list 是定义在 namespace::std 的模板,声明在 <list> ,存储结构是 双向链表, 提供的 正向和反向迭代器. 2.构造list对象 list<i ...
- C# 实现程序开机自启动
最近在做一个自动备份文件的小工具,需要用到开机自启动 下面是代码 private void checkBox8_CheckedChanged(object sender, EventArgs e) { ...