PHP从数据库导出数据到excel,无插件(解决中文以及法语乱码问题)

本文介绍了如何使用PHP从数据库导出数据到Excel文件,重点解决了中文和法语等多语言乱码问题。首先尝试了设置header数码集但仍存在乱码,接着尝试了使用iconv转换编码但不被Excel支持。最终,通过生成包含特定分隔符的CSV文件,并在Excel中导入时按分隔符拆分,实现了乱码的规避。然而,此方法被认为过于繁琐。最后,找到了一种直接生成HTML并导入Excel的方法,可以避免任何语言的乱码,且保持格式不变,无需额外插件。
摘要由CSDN通过智能技术生成

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">这段时间做项目需要把数据库中的数据导出到excel(.xls)文件中。因为是在法国实习,所以处理的语言都是法语(带声调的字母)。个人不是太喜欢用第三方library,感觉很多语言原生代码就可以解决问题。</span>

之前在网上找到方法说是直接加入header数码集就可以直接导出excel文件,但是这个方法导出的文件一直有乱码的问题,乱码仅仅出现在带有声调的字母上。起初以为是三方编码不统一的缘故(前端数据输入编码,数据库编码以及导出编码),但后来确定这三个编码都是utf-8。也有试着使用iconv()函数将导出数据转成Latin1编码(法语专用编码),但无奈excel不支持这种编码格式。

导出csv文件却没有乱码问题,再通过excel导入csv数据依旧不会出现乱码,但是csv文件不利于浏览和打印。实在没办法就写了个php文件将csv分隔符变为#,然后使用excel导入的时候通过‘#’分割字符串到每一个excel单元格。但是老板感觉这样太麻烦了,所以今天又重新开始在网上找方法,后来看到一片博文上的方法蛮不错的,他是解决中文乱码问题,但是因为他是直接导入html文件到excel,所以无论什么语言,只要你的网页上没有出现乱码,在excel中就不会出现乱码,而且格式也不会有变化,相当方便,而且没有使用第三方插件。

下来介绍方法:

1. 首先在php文件开头加入he

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值