完美解决邮件中excel乱码问题<mac 附件乱码>
来源:互联网 发布:java输入整数异常 编辑:程序博客网 时间:2024/06/02 03:11
之前在前期的开发过程中 也发送过excel 后来自己使用mac以后 发现有乱码 所以有必要记录下来
/** * 格式化表格 */ public function formatTable($sign_data){ $table = 'ID'."\t".'姓名打卡'."\t".'时间'."\n"; foreach($sign_data as $key => $val){ $table .= $val['id']."\t".$val['name']."\t".$val['sign_time']."\n"; } return $table; }
PHP中程序使用\t制表符生成的excel 以前也是这么使用的 但是发现有乱码 如下图:
第一时间 当时心里找了很多办法 比如说iconv 和 mb_convert_encoding 进行编码转换 然后在win上没有问题在mac上依然乱码
$content = iconv("GBK", "UTF-8", $content); $content = mb_convert_encoding($content, "UTF-8","GBK");
最后使用phpexcel插件 代码如下:
/** * 使用phpexcel生成excel表格 * @param unknown $data */public function generateExcel($data){ $objPHPExcel = new PHPExcel(); //保存excel—2007格式 $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); //设置当前的sheet $objPHPExcel->setActiveSheetIndex(0); //设置sheet的name $objPHPExcel->getActiveSheet()->setTitle('广州区打开记录'); //设置单元格的值 //垂直居中 $objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); $objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); $objPHPExcel->getActiveSheet()->getStyle('C')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); $objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getActiveSheet()->getStyle('C')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', 'ID')->setCellValue('B1', '姓名')->setCellValue('C1', '签到时间'); $number = 2; $objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(15); $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10); $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(10); $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(30); foreach ($data as $key => $val){ $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A'.$number, $val['id'])->setCellValue('B'.$number,$val['name'])->setCellValue('C'.$number, $val['sign_time']); $number++; } $objWriter->save(self::SAVE_FILE_DIR);}
还是phpexcel插件解决的问题比较完美 乱码就解决了 最后谢谢大家…
0 0
- 完美解决邮件中excel乱码问题<mac 附件乱码>
- [转载]完美解决drupal6上传中文文件名附件乱码问题
- 解决mac下邮件乱码的问题
- python邮件发送(带附件,解决中文乱码问题)
- 解决zabbix邮件内容为附件和zabbix图中出现中文乱码问题
- JavaMail中解决中文附件名乱码的问题
- 解决浏览器下载附件乱码问题 IE11
- 一个发邮件的类,带验证功能,可以发html内容,可以添加附件,并解决附件乱码问题。
- 一个发邮件的类,带验证功能,可以发html内容,可以添加附件,并解决附件乱码问题。
- 一个发邮件的类,带验证功能,可以发html内容,可以添加附件,并解决附件乱码问题。
- 解决MAC JAVAC乱码问题
- mac 解决mysql 乱码问题
- php的IMAP的应用实例(实现收发邮件、删除邮件、附件下载等功能,解决中文乱码问题)
- php的IMAP的应用实例(实现收发邮件、删除邮件、附件下载等功能,解决中文乱码问题)
- php的IMAP的应用实例(实现收发邮件、删除邮件、附件下载等功能,解决中文乱码问题)
- spring mail中附件名乱码问题
- asp jmail发送带附件的邮件出现乱码问题
- 完美解决MySQL数据库中文乱码问题
- jzoj 5006. 【NOI2017模拟3.8】A 树形dp
- 版本控制器——Egit使用方法
- 解决Spring boot中使用Gson,Swagger2 api-docs无法正常显示json问题
- Hibernate中使用Session操作数据以及部分简单HQL(hibernate query language)
- 高斯消元(求解double,int型方程组)
- 完美解决邮件中excel乱码问题<mac 附件乱码>
- 关于F28377D调用FFT库做fft时出现结果无穷大的原因分析
- 笔记plsql
- Linux Kernel设备驱动模型之设备初始化
- VMware12.0下安装Ubuntu14.04 LTS
- 使用Dcxygen对代码进行文档自动生成
- FPGA的引脚VCCINT 、VCCO
- 图片底部遮罩效果
- Head First C 读书笔记(二)