解决方法如下所示:

include 'global.php';

$ids = $_GET['ids'];

$sql = "select * from crm_cost_end where id in ( {$ids} )";

$result = $db->findAll($sql);

//echo $result[1]['sn'];

//创建一个excel对象

$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(8);

$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(10);

$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(25);

$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);

$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(50);

$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(10);

$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(12);

$objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(12);

$objPHPExcel->getActiveSheet()->getColumnDimension('I')->setWidth(12);

$objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(30);

//设置行高度

$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(22);

$objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(20);

//set font size bold

$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);

$objPHPExcel->getActiveSheet()->getStyle('A2:J2')->getFont()->setBold(true);

$objPHPExcel->getActiveSheet()->getStyle('A2:J2')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('A2:J2')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

//设置水平居中

$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);

$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('D')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('F')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('G')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('H')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('I')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

//

$objPHPExcel->getActiveSheet()->mergeCells('A1:J1');

// set table header content

$objPHPExcel->setActiveSheetIndex(0)

->setCellValue('A1', '订单数据汇总 时间:' . date('Y-m-d H:i:s'))

->setCellValue('A2', '订单ID')

->setCellValue('B2', '下单人')

->setCellValue('C2', '客户名称')

->setCellValue('D2', '下单时间')

->setCellValue('E2', '需求机型')

->setCellValue('F2', '需求数量')

->setCellValue('G2', '需求交期')

->setCellValue('H2', '确认BOM料号')

->setCellValue('I2', 'PMC确认交期')

->setCellValue('J2', 'PMC交货备注');

// Miscellaneous glyphs, UTF-8

for ($i = 0; $i < count($result) - 1; $i++) {

$objPHPExcel->getActiveSheet(0)->setCellValue('A' . ($i + 3), $result[$i]['id']);

$objPHPExcel->getActiveSheet(0)->setCellValue('B' . ($i + 3), $result[$i]['realname']);

$objPHPExcel->getActiveSheet(0)->setCellValue('C' . ($i + 3), $result[$i]['customer_name']);

$objPHPExcel->getActiveSheet(0)->setCellValue('D' . ($i + 3), $OrdersData[$i]['create_time']);

$objPHPExcel->getActiveSheet(0)->setCellValue('E' . ($i + 3), $result[$i]['require_product']);

$objPHPExcel->getActiveSheet(0)->setCellValue('F' . ($i + 3), $result[$i]['require_count']);

$objPHPExcel->getActiveSheet(0)->setCellValue('G' . ($i + 3), $result[$i]['require_time']);

$objPHPExcel->getActiveSheet(0)->setCellValue('H' . ($i + 3), $result[$i]['product_bom_encoding']);

$objPHPExcel->getActiveSheet(0)->setCellValue('I' . ($i + 3), $result[$i]['delivery_time']);

$objPHPExcel->getActiveSheet(0)->setCellValue('J' . ($i + 3), $result[$i]['delivery_memo']);

$objPHPExcel->getActiveSheet()->getStyle('A' . ($i + 3) . ':J' . ($i + 3))->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('A' . ($i + 3) . ':J' . ($i + 3))->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objPHPExcel->getActiveSheet()->getRowDimension($i + 3)->setRowHeight(16);

}

// Rename sheet

$objPHPExcel->getActiveSheet()->setTitle('订单汇总表');

// Set active sheet index to the first sheet, so Excel opens this as the first sheet

$objPHPExcel->setActiveSheetIndex(0);

// Redirect output to a client's web browser (Excel5)

ob_end_clean();//清除缓冲区,避免乱码

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');

$objWriter->save('php://output');

?>

在header() 前面加上ob_end_clean() 函数,清除缓冲区, 这样就不会乱码了!

以上就是小编为大家带来的完美解决phpexcel导出到xls文件出现乱码的问题全部内容了,希望大家多多支持脚本之家~

php导出excel出现乱码,完美解决phpexcel导出到xls文件出现乱码的问题相关推荐

  1. php写入文本乱码,如何解决PHP用fwrite写入文件中文乱码的问题

    如何解决PHP用fwrite写入文件中文乱码的问题 发布时间:2020-07-15 13:52:07 来源:亿速云 阅读:220 作者:Leah 这期内容当中小编将会给大家带来有关如何解决PHP用fw ...

  2. java导出excel文件名_怎么解决java导出excel时文件名乱码

    怎么解决java导出excel时文件名乱码 发布时间:2020-06-19 16:59:00 来源:亿速云 阅读:137 作者:元一 java解决导出Excel时文件名乱码的方法示例:String a ...

  3. mysql sql乱码怎么解决_MYSQL数据库导入SQL文件出现乱码如何解决

    导入的方法: mysqluse test; mysql source c:/test.sql 导入数据时,如果目标数据库或表是UTF-8字符集的,而导入SQL中有中文,可能在最终结果中出现乱码,此时只 ...

  4. html2canvas+jspdf 完美解决html导出且分页 解决图片显示不全问题

    html2canvas+jspdf 完美解决html导出且分页 解决图片显示不全问题 参考文章: (1)html2canvas+jspdf 完美解决html导出且分页 解决图片显示不全问题 (2)ht ...

  5. 【2022年clion2022.2控制台中文乱码完美解决】

    [2022年clion2022.2控制台中文乱码完美解决] 前言 一.utf8下解决中文乱码 二.gbk编码下 总结 前言 提示:所有操作均在mingw编译器下进行,msvc编译器下请自行测试: 例如 ...

  6. linux把u盘只读文件,完美解决linux下U盘文件只读的问题

    完美解决linux下U盘文件只读的问题 1. 在终端运行如下命令 tail -f /var/log/syslog 2. 插入有只读文件系统故障的U盘 3. 观察命令行输出 输出局部如下: Jul  8 ...

  7. 成功解决Eclipse打开py等文件出现乱码

    成功解决Eclipse打开py等文件出现乱码 目录 解决问题 解决思路 解决方法 解决问题 Eclipse打开py等文件出现中文乱码 解决思路 默认读取文件是以gbk的方式,需要在属性中进行转换一下即 ...

  8. centos挂载u盘只读_完美解决linux下U盘文件只读的问题

    1. 在终端运行如下命令 tail -f /var/log/syslog 2. 插入有只读文件系统故障的U盘 3. 观察命令行输出 输出局部如下: Jul  8 16:44:50 cslouis-pc ...

  9. linux下u盘目录带锁,完美解决linux下U盘文件只读的问题

    1. 在终端运行如下命令 tail -f /var/log/syslog 2. 插入有只读文件系统故障的U盘 3. 观察命令行输出 输出局部如下: Jul  8 16:44:50 cslouis-pc ...

  10. 打开excel显示php拓展名,phpexcel 导出excel 因为文件格式或文件扩展名无效,请确定文件未损坏,并且文件扩展名与文件的格式匹配...

    phpexcel导出excel:打开出现这个错误,强制打开是乱码 $objPHPExcel =newPHPExcel(); $filename ="test.xls"; heade ...

最新文章

  1. 【Github上有趣的项目】TensorKart 自动驾驶马里奥赛车(玩不了)
  2. php军事网站源码,军事网站的设计与实现(PHP+MYSQL)(含录像)
  3. 省市级联基于jquery+json(转)
  4. 优贝共享数据交易所网_2020.10.4号币圈简报:优贝兼职视界卖单积压,耀健康上涨...
  5. table虚线边框_web前端工程师7天0基础到精通(TABLE+CSS制作《互联世纪网》)
  6. 如何解决 IDEA 占用大量 CPU 导致的卡顿问题?这顿操作猛如虎
  7. Spring集成Redis集群(含spring集成redis代码)
  8. Java中基于TCP通过socket嵌套字连接方式传送文件
  9. python set 和 ^ 的妙用
  10. 手机自动化测试:Appium源码分析之跟踪代码分析七
  11. 人工智能与安全论坛:智能与安全的融合与对抗
  12. SketchUp教程:BIG事务所的建筑竞赛分析图表现(附笔刷+处理稿)
  13. D. Challenging Valleys
  14. 容错性低是什么意思_王者荣耀:在成为高手之前,这4位容错率低的千万别碰!...
  15. 案例:京东登录页面css创建
  16. 小米4c手机显示无服务器,小米4C卡机怎么办 小米4C卡机解决办法【图文】
  17. 今日头条有意向收购锤子科技;原金立总裁加入小米;苹果应用商店出现查开房记录app|雷锋早报...
  18. 网页登录华为云空间,查看空间内容
  19. 【无忧美名网-一款根据诗经、古诗词等国学给宝宝起名的小程序-uniapp端】
  20. vscode权威指南 pdf_疾病日1114 l 世界糖尿病日 l 2019糖尿病指南和共识相关资源**...

热门文章

  1. 》》css3--动画
  2. Java JDK下载安装及环境配置超详细图文教程
  3. 企业管理软件平台架构内幕揭秘
  4. Linux下7款最佳的开源视频播放器
  5. 数据库系统基础教程(原书第三版)课后答案汇总
  6. 2017二级c语言题库贴吧,2017二级c语言题库
  7. Pycharm导入python项目
  8. 精心为学弟学妹整理了60个适合练手的C语言/C++项目,值得收藏!
  9. python 代码命令大全-Python常用命令最全合集
  10. android手机读代码的app,android代码阅读器