thinkphp中phpexcel的使用
1.下载phpexcel文件(之前提到过!)
2.下载后将文件放到:
3.在控制器中引用:
4.部分实现的代码:
public function OutputExcel($data) //导入订单
{ vendor("PHPExcel.PHPExcel"); // Create new PHPExcel object
$objPHPExcel = new \PHPExcel();
// Set properties
$objPHPExcel->getProperties()->setCreator("ctos")
->setLastModifiedBy("ctos")
->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"); //set width
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('I')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('K')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(25);
$objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('N')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('O')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('P')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('Q')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('R')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('S')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('T')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('U')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('V')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('W')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('X')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('Y')->setWidth(13);
$objPHPExcel->getActiveSheet()->getColumnDimension('Z')->setWidth(13); //设置行高度 // $objPHPExcel->getActiveSheet()->getRowDimension()->setRowHeight(25);
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(25);
$objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(45.75); //$objPHPExcel->getActiveSheet()->mergeCells('A1:M1');
//set font size bold
//$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(11);
$objPHPExcel->getActiveSheet()->getStyle('A1:Z1')->getFont()->setSize(11);
//$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getFont()->setSize(12);
$objPHPExcel->getActiveSheet()->getStyle('A1:Z1')->getFont()->setName('等线');
$objPHPExcel->getActiveSheet()->getStyle('A1:Z1')->getFont()->setBold(true);
//$objPHPExcel->getActiveSheet()->getStyle('A1:Z1')->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN);
/*$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setName('宋体');
$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setName('宋体');
$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getFont()->getColor()->setARGB('FFffffff');
$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('A1:M1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN); //$objAlignA5 = $objStyleA5->getAlignment(); $objPHPExcel->getActiveSheet()->getStyle('A1:M1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::VERTICAL_CENTER); //$objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
//设置水平居中 $objPHPExcel->getActiveSheet()->getDefaultStyle('')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel->getActiveSheet()->getStyle('A2:M2')->getFill()->getStartColor()->setARGB("165,48,15"); */
//$objPHPExcel->getActiveSheet()->getStyle('A1:H5')->getFill()->getStartColor()->setARGB('00ff99cc'); // 将背景设置为浅粉色
// set table header content
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '收到订单 ')
->setCellValue('B1', '签单日期')
->setCellValue('C1', '签单公司')
->setCellValue('D1', '签单人员')
->setCellValue('E1', '渠道经理')
->setCellValue('F1', '业务行政所属')
->setCellValue('G1', '业务行政')
->setCellValue('H1', '持牌人')
->setCellValue('I1', '销售公司')
->setCellValue('J1', '销售顾问')
->setCellValue('K1', '保险公司')
->setCellValue('L1', '产品名称')
->setCellValue('M1', '年期')
->setCellValue('N1', '缴费方式')
->setCellValue('O1', '币种')
->setCellValue('P1', '保费')
->setCellValue('Q1', '保额')
->setCellValue('R1', '投保人(中文)')
->setCellValue('S1', '投保人(拼音)')
->setCellValue('T1', '受保人(中文)')
->setCellValue('U1', '受保人(拼音)')
->setCellValue('V1', '保单号码')
->setCellValue('W1', '生效日期')
->setCellValue('X1', '首期保费日')
->setCellValue('Y1', '预计冷静期截止日')
->setCellValue('Z1', '保单状态')
;
// Miscellaneous glyphs, UTF-8
for ($i = 0; $i < count($data); $i++) {
switch($data[$i]['status']){
case 0:
$s = "批核中";
break;
case 1:
$s = "保单生效";
break;
case 2:
$s = "拒保/退保";
break;
case 3:
$s = "Pending-处理中";
break;
case 4:
$s = "Pending-需补资料";
break;
default:
$s = "Pending-资料需审核";
} $splwhere['id'] = array('eq',$data[$i]['sales_id']);
$sale = \Model\SalesModel::get($splwhere);
$where['id'] = array('eq',$sale['admin_id']);
$admin = \Model\AdminModel::get($where);
$where1['admin_id'] = array('eq',$admin['id']);
$company = \Model\CompanyModel::get($where1);
$customer = M('Customer')->where(array('id'=>$data[$i]['customer_id']))->find(); $objPHPExcel->getActiveSheet(0)->setCellValue('A' . ($i + 2), $data[$i]['deliver_date']);
$objPHPExcel->getActiveSheet(0)->setCellValue('B' . ($i + 2), date('Y-m-d',strtotime($data[$i]['sold_date'])));
$objPHPExcel->getActiveSheet(0)->setCellValue('C' . ($i + 2), $data[$i]['suoshu']);
$objPHPExcel->getActiveSheet(0)->setCellValue('D' . ($i + 2), $data[$i]['receiver']);
$objPHPExcel->getActiveSheet(0)->setCellValue('E' . ($i + 2), $data[$i]['sale_jingli']);
$objPHPExcel->getActiveSheet(0)->setCellValue('F' . ($i + 2), $company['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('G' . ($i + 2), $admin['username']);
$objPHPExcel->getActiveSheet(0)->setCellValue('H' . ($i + 2), $data[$i]['chipai']);
$objPHPExcel->getActiveSheet(0)->setCellValue('I' . ($i + 2), $data[$i]['sales']['company']['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('J' . ($i + 2), $data[$i]['sales']['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('K' . ($i + 2), $data[$i]['subproduct']['product']['insurance_company']['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('L' . ($i + 2), $data[$i]['subproduct']['product']['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('M' . ($i + 2), $data[$i]['subproduct']['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('N' . ($i + 2), $data[$i]['payment_method']);
$objPHPExcel->getActiveSheet(0)->setCellValue('O' . ($i + 2), '美元');
$objPHPExcel->getActiveSheet(0)->setCellValue('P'.($i+2), $data[$i]['premium_usd']);
$objPHPExcel->getActiveSheet(0)->setCellValue('Q'.($i+2), $data[$i]['limit_usd']);
$objPHPExcel->getActiveSheet(0)->setCellValue('R'.($i+2), $data[$i]['customer_name']?$data[$i]['customer_name']:$customer['name']);
$objPHPExcel->getActiveSheet(0)->setCellValue('S'.($i+2), $data[$i]['customer_name_en']);
$objPHPExcel->getActiveSheet(0)->setCellValue('T'.($i+2), $data[$i]['policy_name_cn']);
$objPHPExcel->getActiveSheet(0)->setCellValue('U'.($i+2), $data[$i]['policy_name_en']);
$objPHPExcel->getActiveSheet(0)->setCellValue('V'.($i+2), $data[$i]['contract_code']);
$objPHPExcel->getActiveSheet(0)->setCellValue('W'.($i+2), $data[$i]['shengxiao']);
$objPHPExcel->getActiveSheet(0)->setCellValue('X'.($i+2), $data[$i]['begin_date']);
$objPHPExcel->getActiveSheet(0)->setCellValue('Y'.($i+2), $data[$i]['lengjing']);
$objPHPExcel->getActiveSheet(0)->setCellValue('Z'.($i+2), $s); //$objPHPExcel->getActiveSheet()->getStyle('A' . ($i + 2) . ':M' . ($i + 3))->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
//$objPHPExcel->getActiveSheet()->getStyle('A' . ($i + 2) . ':M' . ($i + 3))->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getRowDimension($i + 2)->setRowHeight(20);
} // sheet命名
$objPHPExcel->getActiveSheet()->setTitle('销售记录表'); // Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0); // excel头参数
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="销售记录表(' . date('Ymd-His') . ').xls"'); //日期为文件名后缀
header('Cache-Control: max-age=0'); $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); //excel5为xls格式,excel2007为xlsx格式 $objWriter->save('php://output');
}
5.测试。应用。
thinkphp中phpexcel的使用的更多相关文章
- thinkPHP中phpexcel的导出功能
public function wExcel() { vendor("PHPExcel.PHPExcel"); // Create new PHPExcel object $obj ...
- thinkphp中使用PHPEXCEL导出数据
thinkphp中导出二维数组到Excel 1.解决时间长度导致EXCEL出现###问题 2.解决长数值型 带来的科学记数法导出问题 订单号不再变为科学记数法 而是直接字符串类型 代码如下: < ...
- PHPEXCEL在thinkphp中封装成类使用
PHPEXCEL在thinkphp中封装成类使用 标签: phpexcel导出导入thinkphp -- : 435人阅读 评论() 收藏 举报 分类: php() 版权声明:本文为博主原创文章,未经 ...
- ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
这篇文章主要介绍了ThinkPHP使用PHPExcel实现Excel数据导入导出,非常实用的功能,需要的朋友可以参考下 本文所述实例是使用在Thinkphp的开发框架上,要是使用在其他框架也是同样的方 ...
- thinkphp中如何使用phpspreadsheet插件
thinkphp中如何使用phpspreadsheet插件 一.总结 一句话总结:多百度,百度什么都有 1.thinkphp中用composer安装的插件的命名空间是什么? use PhpOffice ...
- thinkphp中composer方式安装的插件如何使用
thinkphp中composer方式安装的插件如何使用 一.总结 一句话总结:任何东西都是可以百度或者google搜到的,要自己先想怎么解决,解决不出来迅速百度,不要自己臆断 1.在tp5框架的什么 ...
- thinkphp操作phpexcel问题
一.thinkphp引入PHPExcel到/Thinkphp/Library/Vendor/ 二.在控制器中引用 public function get_detail() { Vendor(" ...
- [转]ThinkPHP中实例化对象M()和D()的区别,select和find的区别
1.ThinkPHP中实例化对象M()和D()的区别 在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会 ...
- ThinkPHP中疑难笔记
不但要记住核心的东西, 还要记住 相关的 东西: 如php cli的版本是 5.6.14 bulit: sep 30, 2015 tp中, 通常说的系统就是框架; 项目就是 "应用程序&qu ...
随机推荐
- UML学习(一)-工具介绍
这里用于学习UML的工具是StarUML,没有什么原因为什么要用它,或许仅仅是有人说好用和比较小. 首先介绍下这个工具,来张图. 1.菜单栏(最上面) 2.快捷工具栏(菜单栏下面) 3.工具项(Too ...
- ie 已限制此网页运行脚本或Active控件
ie 已限制此网页运行脚本或Active控件 CreateTime--2018年3月12日16:49:43 Author:Marydon 情景还原: 在本地调试html页,如果其中包含js或fla ...
- linux下php添加cur/soapl扩展
注意:在不同的扩展路径下 ./configure --help 的帮助信息不尽相同 1.跟php一起安装 下载 http://curl.haxx.se/download/ curl 取较低的版本 wg ...
- 数据库如何创建视图create view
数据库如何创建视图 创建视图的理想步骤: 一般来说,视图创建可以分为五步走: 第一步:先考虑select语句的编写.我们知道,视图其实就是一个select语句的集合,所以,我们建立视图的第一步 ...
- 转:TCP/IP协议选项——TCP_KEEPALIVE .
[+] KEEPALIVE作用 KEEPALIVE代码示例 KEEPALIVE脚本设置 1.KEEPALIVE作用 KEEPALIVE机制,是TCP协议规定的TCP层(非应用层业务代码实现的)检测 ...
- 你所不知道的 CSS 阴影技巧与细节 滚动视差?CSS 不在话下 神奇的选择器 :focus-within 当角色转换为面试官之后 NPOI 教程 - 3.2 打印相关设置 前端XSS相关整理 委托入门案例
你所不知道的 CSS 阴影技巧与细节 关于 CSS 阴影,之前已经有写过一篇,box-shadow 与 filter:drop-shadow 详解及奇技淫巧,介绍了一些关于 box-shadow ...
- bzoj-4003 城池攻占
题意: 给出一个n个结点的有根树,和m个骑士: 树上的结点--城池有一个防御值,骑士有一个战斗力: 当骑士的战斗力大于等于城池时,城池被攻破.骑士的战斗力变化,并向树上的父节点前进: 否则骑士死亡. ...
- WIN10 无法访问2003 server共享
With Windows 10 v1803 or Spring Creators update released I have decided to do a fresh installation o ...
- tp模型和数据库操作方法
一.新建的模型名和表名一样,采用驼峰式,如表名user_type模型取名为UserType namespace app\index\model;use think\Model;class UserTy ...
- DevExpress中GridControl列转义的实现方法
/// <summary> /// CustomColumnDisplayText Helper /// </summary> /// <param name=" ...