iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >怎么处理php输出excel乱码的情况
  • 162
分享到

怎么处理php输出excel乱码的情况

2023-06-07 20:06:33 162人浏览 薄情痞子
摘要

本篇内容主要讲解“怎么处理PHP输出excel乱码的情况”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么处理php输出excel乱码的情况”吧!php输出excel乱码的解决办法:首先打开相应

本篇内容主要讲解“怎么处理PHP输出excel乱码的情况”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么处理php输出excel乱码的情况”吧!

php输出excel乱码的解决办法:首先打开相应的PHP文件;然后在“header()”前面加上“ob_end_clean()”函数,清除缓冲区即可解决乱码问题。

怎么处理php输出excel乱码的情况

本文操作环境:windows7系统、PHP7.1、Dell G3电脑。

完美解决phpexcel导出到xls文件出现乱码的问题

下面小编就为大家带来一篇完美解决phpexcel导出到xls文件出现乱码的问题。

解决方法如下所示:

<?phpinclude '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)<span style="color:#ff0000;">ob_end_clean();//清除缓冲区,避免乱码</span>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() 函数,清除缓冲区, 这样就不会乱码了!

到此,相信大家对“怎么处理php输出excel乱码的情况”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 怎么处理php输出excel乱码的情况

本文链接: https://www.lsjlt.com/news/250054.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么处理php输出excel乱码的情况
    本篇内容主要讲解“怎么处理php输出excel乱码的情况”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么处理php输出excel乱码的情况”吧!php输出excel乱码的解决办法:首先打开相应...
    99+
    2023-06-07
  • php中base64解码出现乱码情况怎么办
    小编给大家分享一下php中base64解码出现乱码情况怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!php base64解码乱码的解决办法:1、将要解码的字符串中的减号“-”用加号“+”替换;2、将要解码的字符串中的...
    99+
    2023-06-14
  • 怎么解决php微信输出乱码
    小编给大家分享一下怎么解决php微信输出乱码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php微信输出乱码的解决办法:1、使用urlencode进行编码;2、通...
    99+
    2023-06-21
  • 怎么解决php qrcode 输出乱码问题
    本篇内容介绍了“怎么解决php qrcode 输出乱码问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php qrcode输出乱码的解决方...
    99+
    2023-06-20
  • php输出数组键名乱码怎么办
    本文操作环境:windows7系统、PHP7.1版、DELL G3电脑php输出数组键名乱码怎么办?一、纯PHP页面的中文乱码问题(数据是静态的)这个只需要在页面的开始处加入下面代码,然后保存UTF-8编码的文件即可。<php hea...
    99+
    2018-06-28
    php 乱码
  • php打印输出中文乱码怎么办
    本文操作环境:windows7系统、PHP7.1版、DELL G3电脑php打印输出中文乱码怎么办?PHP输出中文乱码的解决方法最近在windows上发现PHP程序中输出来的中文有乱码的情况。看了很多帖子资料说可以在页面上添加:用echo输...
    99+
    2019-06-05
    php 乱码
  • php 二进制流输出乱码怎么办
    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。php 二进制流输出乱码怎么办?最近在用php开发从mysql中读取并输出二进制文件,遇到了乱码问题。一般输出二进制文件是用下面的方法:<php if(!iss...
    99+
    2022-10-21
  • php输出到浏览器乱码怎么办
    php输出到浏览器乱码的解决办法:1、打开相应的php文件;2、在该php文件开头处加上“header('Content-Type:text/html;charset=utf-8');”语句即可。本教程操作环境:Window...
    99+
    2023-05-14
    php 乱码
  • 解决bat批处理输出乱码的问题
    乱码原因 Windows的cmd.exe默认编码格式为ANSI 简体中文版的Windows, 其ANSI对应微软Codepage为cp936 大致等同于GBK编码 如果你的bat文...
    99+
    2022-11-12
  • PHP怎么处理文件不存在的情况
    这篇文章主要讲解了“PHP怎么处理文件不存在的情况”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP怎么处理文件不存在的情况”吧!当您使用PHP访问文件系统时,有几种方法可以检查文件是否存...
    99+
    2023-07-05
  • php输出数组键名乱码怎么解决
    本篇内容主要讲解“php输出数组键名乱码怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php输出数组键名乱码怎么解决”吧!php输出数组键名乱码的解决办法:1、在页面的开始处加入“hea...
    99+
    2023-06-26
  • php页面输出值乱码问题怎么解决
    在开发PHP应用程序时,经常会遇到输出到页面的值出现乱码的问题。这是因为PHP输出到页面的值是通过编码的方式传输的,而常见的字符编码包括UTF-8、GBK、GB2312等,如果输出的编码格式不正确,就会出现乱码问题。在PHP中,可以通过以下...
    99+
    2023-05-14
    php 乱码
  • Jsp/Servlet接收FORM表格参数时输出乱码怎么处理
    小编给大家分享一下Jsp/Servlet接收FORM表格参数时输出乱码怎么处理,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Jsp/Servlet接收FORM表格...
    99+
    2023-06-03
  • 怎么解决PHP输出错误信息乱码的问题
    这篇“怎么解决PHP输出错误信息乱码的问题”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么解决PHP输出错误信息乱码的问题...
    99+
    2023-07-05
  • 怎么处理浏览器的断网情况
    本篇内容主要讲解“怎么处理浏览器的断网情况”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么处理浏览器的断网情况”吧!概览为了构建一个 “断网(offline)...
    99+
    2022-10-19
  • php输出汉字为乱码是什么原因?怎么解决?
    随着互联网的快速发展,编程语言也变得越来越多样化,其中php最为常用。然而,很多php初学者在输出中文时常会遇到乱码问题。那么出现php输出乱码问题的原因是什么呢?首先,我们需要了解一下“字符集”和“编码”的概念。字符集是由一组字符构成,例...
    99+
    2023-05-14
  • php中文输出是乱码的原因是什么及怎么解决
    本篇内容主要讲解“php中文输出是乱码的原因是什么及怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php中文输出是乱码的原因是什么及怎么解决”吧!一、中文输出乱码的原因字符编码不一致字符...
    99+
    2023-07-05
  • 怎么解析引起PHP代码错误的情况
    本篇文章给大家分享的是有关怎么解析引起PHP代码错误的情况,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。再小心谨慎的人,在编写程序时,还是会犯错的。下面主要介绍PHP中的这些小...
    99+
    2023-06-17
  • win10一直显示频率超出范围是什么情况,怎样处理
    "频率超出范围"是指显示器无法显示输入信号的频率范围。这可能是由于您的计算机设定的分辨率或刷新率超出了显示器的支持范围。要解决这个问...
    99+
    2023-09-09
    win10
  • 怎么处理php下载文件内容乱码的问题
    这篇文章将为大家详细讲解有关怎么处理php下载文件内容乱码的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php下载文件内容乱码的解决办法:1、通过“ob_clean()”函数清空输出缓冲区内容;2、...
    99+
    2023-06-07
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作