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的使用的更多相关文章

  1. thinkPHP中phpexcel的导出功能

    public function wExcel() { vendor("PHPExcel.PHPExcel"); // Create new PHPExcel object $obj ...

  2. thinkphp中使用PHPEXCEL导出数据

    thinkphp中导出二维数组到Excel 1.解决时间长度导致EXCEL出现###问题 2.解决长数值型 带来的科学记数法导出问题 订单号不再变为科学记数法 而是直接字符串类型 代码如下: < ...

  3. PHPEXCEL在thinkphp中封装成类使用

    PHPEXCEL在thinkphp中封装成类使用 标签: phpexcel导出导入thinkphp -- : 435人阅读 评论() 收藏 举报 分类: php() 版权声明:本文为博主原创文章,未经 ...

  4. ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例

    这篇文章主要介绍了ThinkPHP使用PHPExcel实现Excel数据导入导出,非常实用的功能,需要的朋友可以参考下 本文所述实例是使用在Thinkphp的开发框架上,要是使用在其他框架也是同样的方 ...

  5. thinkphp中如何使用phpspreadsheet插件

    thinkphp中如何使用phpspreadsheet插件 一.总结 一句话总结:多百度,百度什么都有 1.thinkphp中用composer安装的插件的命名空间是什么? use PhpOffice ...

  6. thinkphp中composer方式安装的插件如何使用

    thinkphp中composer方式安装的插件如何使用 一.总结 一句话总结:任何东西都是可以百度或者google搜到的,要自己先想怎么解决,解决不出来迅速百度,不要自己臆断 1.在tp5框架的什么 ...

  7. thinkphp操作phpexcel问题

    一.thinkphp引入PHPExcel到/Thinkphp/Library/Vendor/ 二.在控制器中引用 public function get_detail() { Vendor(" ...

  8. [转]ThinkPHP中实例化对象M()和D()的区别,select和find的区别

    1.ThinkPHP中实例化对象M()和D()的区别 在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会 ...

  9. ThinkPHP中疑难笔记

    不但要记住核心的东西, 还要记住 相关的 东西: 如php cli的版本是 5.6.14 bulit: sep 30, 2015 tp中, 通常说的系统就是框架; 项目就是 "应用程序&qu ...

随机推荐

  1. Eddy&#39;s digital Roots

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission ...

  2. 【转帖】ArtisticStyle----很好用的C/C++样式格式化工具

    下载地址:http://srgb.googlecode.com/files/AStyle_2.02_windows.7z 把astyle.exe 复制到 C:\WINDOWS 目录里,省的指定路径VC ...

  3. HBase in Action前三章笔记

    近期接触HBase,看了HBase In Action的英文版.開始认为还行,做了些笔记.可是兴许看下去,越来越感觉到实战这本书比較偏使用上的细节,对于HBase的具体设计涉及得很少.把前三章的一些笔 ...

  4. 基于skitter的轮播图炫酷效果,幻灯片的体验

    概述 包含各种炫酷的轮播切换效果,插件小巧,与其他插件无冲突,可用于移动端和PC端 详细 代码下载:http://www.demodashi.com/demo/11939.html 你还在用原生的js ...

  5. C# XMLOperate

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...

  6. Android+手势识别详解

      今天就来把以前的学习文章与经验简单总结中出来吧,在这里我就直接把代码贴下来了,希望能给初学者做最佳的学习参考,也希望有更多的开发人员来加入 ANDROID开发团队,参与更多的创新方式的开发,好了, ...

  7. 温故而知新 js 的错误处理机制

    // 在函数块的try中return,会直接成为函数的return值 function test() { try { alrt(123) return 'success' } catch(err) { ...

  8. Spring Cloud 模块简介

    Spring Cloud Netflix对微服务的支持还有: Hystrix: 断路器和资源隔离 Feign: 声明式HTTP REST请求客户端 Ribbon: 与Eureka结合实现软负载均衡 Z ...

  9. memcached+Mysql(主从)

    昨天和守住看了下http://hi.baidu.com/156544632/blog/item/3b26527b68623ff00bd18746.html这篇文章,思路很好,但感觉就是太乱了,而且还出 ...

  10. jmx 配置

    1.启动添加jmx参数 -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom. ...