广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php输出csv乱码的解决方法
  • 618
分享到

php输出csv乱码的解决方法

2023-06-06 15:06:23 618人浏览 八月长安
摘要

这篇“PHP输出csv乱码的解决方法”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“php输出csv乱码的解决方法”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让

这篇“PHP输出csv乱码的解决方法”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“php输出csv乱码的解决方法”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们一起来看看具体内容吧。

php有什么用

php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。

php输出csv乱码的解决办法:首先打开相应的代码文件;然后在文件的开始输出BOM头,并告诉windows CSV文件的编码方式;最后让excel打开CSV时采用正确的编码即可。

PHP导出CSV文件出现乱码的解决方法

  在做项目时碰到使用外语的情况下,我们就会使用UTF-8编码。但是,在用PHP导出CSV文件时,如果写入的数据是使用UTF-8编码的日语、韩语之类的外文,就会出现乱码。

  要解决PHP生成CSV文件的乱码问题,只需要在文件的开始输出BOM头,告诉windows CSV文件的编码方式,从而让Excel打开CSV时采用正确的编码。

   什么是BOM

在UCS 编码中有一个叫做”ZERO WIDTH NO-BREAK SPACE”的字符,它的编码是FEFF。而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中。UCS规范建议我们在传输字节流前,先传输字符”ZERO WIDTH NO-BREAK SPACE”。这样如果接收者收到FEFF,就表明这个字节流是Big-Endian的;如果收到FFFE,就表明这个字节流是Little-Endian的。因此

字符”ZERO WIDTH NO-BREAK SPACE”又被称作BOM。UTF-8不需要BOM来表明字节顺序,但可以用BOM来表明编码方式。字符”ZERO WIDTH NO-BREAK SPACE”的UTF-8编码是EF BB BF。所以如果接收者收到以EF BB BF开头的字节流,就知道这是UTF-8编码了。Windows就是使用BOM来标记文本文件的编码方式的。

【推荐学习:《PHP视频教程》】

  在所有内容输出之前

print(chr(0xEF).chr(0xBB).chr(0xBF));

  几个UTF编码的BOM头

  define ('UTF32_BIG_ENDIAN_BOM'   ,   chr(0x00) . chr(0x00) . chr(0xFE) . chr(0xFF));   define ('UTF32_LITTLE_ENDIAN_BOM',   chr(0xFF) . chr(0xFE) . chr(0x00) . chr(0x00));   define ('UTF16_BIG_ENDIAN_BOM' ,   chr(0xFE) . chr(0xFF));   define ('UTF16_LITTLE_ENDIAN_BOM',   chr(0xFF) . chr(0xFE));   define ('UTF8_BOM'   ,   chr(0xEF) . chr(0xBB) . chr(0xBF));

完整的代码

header('Expires: 0');     header('Cache-control: private');     header('Cache-Control: must-revalidate, post-check=0, pre-check=0');     header('Content-Description: File Transfer');     header('Content-Encoding: UTF-8');     header('Content-type: text/csv; charset=UTF-8');     header('Content-Disposition: attachment;            filename=Customers_Export.csv');echo "\xEF\xBB\xBF"; // UTF-8 BOM// print(chr(0xEF).chr(0xBB).chr(0xBF));

感谢你的阅读,希望你对“php输出csv乱码的解决方法”这一关键问题有了一定的理解,具体使用情况还需要大家自己动手实验使用过才能领会,快去试试吧,如果想阅读更多相关知识点的文章,欢迎关注编程网PHP编程频道!

--结束END--

本文标题: php输出csv乱码的解决方法

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

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

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

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

下载Word文档
猜你喜欢
  • php输出csv乱码的解决方法
    这篇“php输出csv乱码的解决方法”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“php输出csv乱码的解决方法”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让...
    99+
    2023-06-06
  • php验证码输出乱码的解决方法
    小编给大家分享一下php验证码输出乱码的解决方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php验证码输出乱码的解决办法:1、检查并修改访问验证码生成方法函数...
    99+
    2023-06-08
  • php页面输出乱码的解决方法
    小编给大家分享一下php页面输出乱码的解决方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!php页面输出乱码的解决办法:1、php文件编码和网页输出编码设置成一致;2、php文件编码和数据库存储的字符编码设置为一致;3、...
    99+
    2023-06-14
  • php变量输出乱码的解决方法
    这篇文章主要介绍了php变量输出乱码的解决方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php变量输出乱码的解决办法:1、通过“iconv("GB23...
    99+
    2023-06-15
  • php生成csv乱码的解决方法
    这篇文章主要介绍了php生成csv乱码的解决方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php生成csv乱码是因为输出的csv格式文件没有BOM,其解决办法就是使用BO...
    99+
    2023-06-15
  • java导出csv乱码解决方法介绍
    问题将查询的数据以xls文件导出时(UTF-8编码),数据正常;但以CSV文件导出时,文件中的中文乱码,同样是UTF-8编码,改成GBK编码导出时,中文显示正常。本以为问题解决,后面导出含拉丁字符(如ÀÆÊàÌ)的数据时,以xls文件导出数...
    99+
    2021-01-05
    java
  • php导出csv中文乱码的解决方法是什么
    本篇内容介绍了“php导出csv中文乱码的解决方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php导出csv中文乱码的解决办法:1...
    99+
    2023-06-25
  • php数组中文输出乱码的解决方法
    这篇文章主要介绍了php数组中文输出乱码的解决方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php数组中文输出乱码的解决方法:首先在php文档的开头加入“header(&...
    99+
    2023-06-14
  • php打印输出中文乱码的解决方法
    这篇文章将为大家详细讲解有关php打印输出中文乱码的解决方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php打印输出中文乱码的解决办法:1、打开php.ini文件;2、找到“;default.char...
    99+
    2023-06-25
  • php导出mysql csv乱码如何解决
    今天小编给大家分享一下php导出mysql csv乱码如何解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。php导出mys...
    99+
    2023-07-04
  • navicat导出csv乱码的方法
    这篇文章主要介绍了navicat导出csv乱码的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。  navicat是强大的可视化数据库管理工具...
    99+
    2022-10-18
  • mysql csv中文乱码的解决方法
    这篇文章给大家分享的是有关mysql csv中文乱码的解决方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。mysql csv中文乱码的解决办法:首先鼠标右键点击选中的csv文件...
    99+
    2022-10-18
  • java控制台输出乱码解决方法
    java资源的编码都是utf8,使用utf8编译。但是控制台输出的时候,中文汉字还是会出现乱码。eclipse控制台eclipse控制台的编码默认为操作系统的编码,比如GBK。这时候就不能正确显示utf8编码的汉字,需要指定控制台的编码为u...
    99+
    2022-04-17
    java基础 java
  • php导出mysql csv乱码问题怎么解决
    本教程操作环境:Windows7系统、PHP8.1版、Dell G3电脑。php导出mysql csv乱码问题怎么解决?导出csv在windows下打开容易出现乱码,需要在文件头部写入BOM标识,已经封装成一个函数了 function ...
    99+
    2022-11-19
    乱码 php
  • Mysql 导入导出csv 中文乱码问题的解决方法
    导入csv:复制代码 代码如下:load data infile '/test.csv' into table table_name fields terminated by ','...
    99+
    2022-11-15
    Mysql csv 中文乱码
  • 浅析PHP输出汉字乱码的原因及解决方法
    PHP是一种开源的服务器端脚本语言,被广泛应用于Web开发。但是,在进行中文字符的输出时,经常会发生字符集转换的问题而出现乱码,这是让许多开发人员头疼的问题。本文将介绍PHP输出汉字乱码的原因及解决方法。原因分析在PHP中,字符编码主要有两...
    99+
    2023-05-14
    php 乱码
  • java向html输出中文乱码解决方法
    java向html输出中文乱码根本原因就是编码不一致的问题,所以解决方式就是设置编码的方式。其中,还分为字节流和字符流的解决方式字节流:response.setHeader("Content-Type", "text/html;charse...
    99+
    2015-10-08
    java html 乱码
  • php模板类出乱码的解决方法
    这篇文章主要介绍了php模板类出乱码的解决方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php模板类出乱码的解决办法:1、检查引用模板的PHP文件;2、设置该文件跟htm...
    99+
    2023-06-22
  • phpMyAdmin导入csv中文乱码的解决方法
    小编给大家分享一下phpMyAdmin导入csv中文乱码的解决方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!phpMyAdmin导入csv中文乱码怎么办项目中用到含有中文字段的数据CS...
    99+
    2022-10-18
  • 怎么解决php微信输出乱码
    小编给大家分享一下怎么解决php微信输出乱码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php微信输出乱码的解决办法:1、使用urlencode进行编码;2、通...
    99+
    2023-06-21
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作