thinkphp整合phpword

Wesley13
• 阅读 1036

穿插一段:PHPExcel  

认识一人问我

phpExcel  执行时出现各种问题    要不就是空的,要不就是浏览器一直刷新,要不就是出现部分数据,有部分数据出不来;

经过排查--发现是数据太多的问题  ------执行2万多条数据时-----出现问题------limit5000就没问题---

后来 增大执行时间解决了 

thinkphp整合phpword   

有遇见的可以朝这个思路去解决下。

thinkphp 整合PHPword(PHPword.php和PHPword文件夹放在了PHPword文件夹下;然后把最外边这个PHPword文件放在thinkphp vendor文件夹下 tp3.2)

createSection(); $properties = $PHPWord->getProperties(); // 定义样式数组 $styleTable = array('borderSize'=>6, 'borderColor'=>'006699', 'cellMargin'=>80); $styleFirstRow = array('borderBottomSize'=>18, 'borderBottomColor'=>'0000FF', 'bgColor'=>'66BBFF'); // 定义单元格样式数组 $styleCell = array('valign'=>'center'); $styleCellBTLR = array('valign'=>'center', 'textDirection'=>\\PHPWord\_Style\_Cell::TEXT\_DIR\_BTLR); // 定义第一行的字体 $fontStyle = array('bold'=>true, 'size'=>18, 'align'=>'center'); **// 标题内容** **//$PHPWord->addFontStyle('rStyle', array('bold'=>true, 'italic'=>true, 'size'=>80));** **$PHPWord->addParagraphStyle('pStyle', array('align'=>'center', 'spaceAfter'=>100));** **$section->addText($name."景点门票预订传真函", $fontStyle, 'pStyle');** // 添加表格样式 $PHPWord->addTableStyle('myOwnTableStyle', $styleTable, $styleFirstRow, $fontStyle); // 添加表格 $table = $section->addTable('myOwnTableStyle'); $PHPWord->setDefaultFontName('宋体'); // 全局字体 $PHPWord->setDefaultFontSize(14); // 全局字号 // 内容开始 // 第一行 $table->addRow(); $table->addCell(3600)->addText("from:$formNname"); $table->addCell(2800)->addText("电话:$tel"); $table->addCell(2800)->addText("传真:$fax");  // 生成docx文档 $objWriter = **\\PHPWord\_IOFactory::createWriter($PHPWord, 'Word2007');** $objWriter->**save('abc.docx');** } } 中文乱码支持的问题 百度下 基本上就是 把 base.php  section.php table.php 等几个php文件里的utf-8 encode改成  中文编码() 注意如果还没解决,试下把控制器编码改成asni编码试下() 额,其实是帮同学整合的,后来小伙遇到一个奇葩问题,由于编码问题,他的换行有问题; 比如:‘备注:                        (1)这是第一行;                         (2)这是第二行’ 他的内容需要拼接成这样;就需要换行;结果他的换行不识别; 我在这里找到答案; http://www.phpddt.com/php/phpword-cell-newline.html 其实就是‘\\n’的替换; 额。。。如果再有问题  会继续记录
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Easter79 Easter79
3年前
swap空间的增减方法
(1)增大swap空间去激活swap交换区:swapoff v /dev/vg00/lvswap扩展交换lv:lvextend L 10G /dev/vg00/lvswap重新生成swap交换区:mkswap /dev/vg00/lvswap激活新生成的交换区:swapon v /dev/vg00/lvswap
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
Wesley13 Wesley13
3年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Easter79 Easter79
3年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这