有时候直接用php导出excel会有乱码或者中文变成问号出现,这时候肯定就是编码的问题了。
前
后
![](https://img-my.csdn.net/uploads/201204/26/1335428487_6924.png)
![](https://img-my.csdn.net/uploads/201204/26/1335428501_8750.png)
前
后
![](https://img-my.csdn.net/uploads/201204/26/1335428573_8992.png)
![](https://img-my.csdn.net/uploads/201204/26/1335428577_9645.png)
环境
MySQL 5.0 数据库 utf8_general_ci 编码
PHP UTF8 编码
需要注意的问题
1. 从数据库读取出来的数据是否乱码?
2. 输出为 xls 文件时候,xls 编码格式大多为 gbk or gb2312,因而要多读取的数据库中的数据有中文的要转码
需要注意的问题
1. 从数据库读取出来的数据是否乱码?
- mysql_query( "SET NAMES 'utf8'"); //定义好如何和数据库连接的编码
- $filename = mb_convert_encoding($filename, "gb2312" , "utf-8" ); 由utf8转为gb2312