Home > Backend Development > PHP Tutorial > Summary of solutions to Chinese garbled Chinese characters exported by PHP_PHP Tutorial

Summary of solutions to Chinese garbled Chinese characters exported by PHP_PHP Tutorial

WBOY
Release: 2016-07-13 10:56:19
Original
1522 people have browsed it

My page is encoded in UTF-8. What should I do to ensure that the exported excel will not be garbled? And because different operating systems have different system encodings, do they have to provide files in different encoding formats for download?

1. Define file name

2. Fill in Excel data

There may be some garbled problems when exporting Excel from PHP during these two processes. Let me talk about the solution below:


Solve the garbled Excel exported by PHP of data in Excel:

The reason why PHP exports Excel with garbled characters: The web page encoding is inconsistent with the Excel encoding.

Solution: Since the encoding is inconsistent, it will be OK to make it consistent. Define Excel’s character set:

 代码如下 复制代码
header(“Content-Type: application/vnd.ms-excel; charset=UTF-8″)

, you see charset=UTF-8, make it consistent with your web page encoding to solve the problem of garbled data in Excel, this is relatively simple!

Attached is a php export Excel class

The code is as follows Copy code
 代码如下 复制代码

/*
* Created on 2012-2-26
*
* To change the template for this generated file go to
* Window - Preferences - PHPeclipse - PHP - Code Templates
*/
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=php100.xls");
?>


 
  
 
 
  
  
  
  
 
class infomation

/*

* Created on 2012-2-26

*

* To change the template for this generated file go to
代码如下 复制代码

iconv("UTF-8", "GBK", $value);

* Window - Preferences - PHPeclipse - PHP - Code Templates<🎜> */<🎜> header("Content-type:application/vnd.ms-excel");<🎜> header("Content-Disposition:filename=php100.xls");<🎜> ?>
class infomation
Summary Need to convert to GBK before exporting
The code is as follows Copy code
iconv("UTF-8", "GBK", $value);

Other methods

Finally, I adopted the method of phpMyAdmin. I used HTMLExcel. We are familiar with HTML and the format is as follows.

The code is as follows Copy code
 代码如下 复制代码

xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="http://www.w3.org/TR/REC-html40">


 
  
  
 
 
  


   
    
    
   
1234Robbin会吐口水
5678javaeye网站

  

 

xmlns:x="urn:schemas-microsoft-com:office:excel"

xmlns="http://www.w3.org/TR/REC-html40">


 代码如下 复制代码
header("Content-type:application/vnd.ms-excel");  
header("Content-Disposition:attachment;filename=export_data.xls"); 

1234Robbin can spit
5678javaeye website
 代码如下 复制代码
header(“Content-Disposition: inline; filename=”" . $filename . “.xls”")

Now you can echo directly without iconv transcoding. Just set the Content-type in HTML (UTF-8 is used here). Doesn’t it feel comfortable? Of course, the header still needs to be added. Php code

The code is as follows Copy code
header("Content-type:application/vnd .ms-excel");
 代码如下 复制代码
iconv(‘utf-8″, “gb2312″, $filename)
header("Content-Disposition:attachment;filename=export_data.xls");
If you export Chinese names, garbled characters may appear Solution to the garbled file name exported to Excel by PHP: Cause of garbled code: The Chinese version of Windows system platform used by the customer, and the file name encoding of the Windows platform is gb2312 (gbk), and in order to follow the existing trend, our web page encoding generally uses utf-8 (internationalization) encoding. This When we: will appear garbled characters. If your web page encoding is gb2312, then there is no need to consider encoding issues. Solution: To transcode $filename, execute:

. If your environment does not support the iconv function, you can use another function, as long as the encoding of $filename can be converted to gbk.
But this problem will arise again, and Linux users will have garbled file names (because the Linux platform file names are not gbk encoded).

Considering this problem, I adopted two methods: First: give up some customers, after all, Windows system users account for the majority. Second: Like gmail, two download addresses are provided. One file name is gbk encoded, and one file name is utf-8 encoded.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/632176.htmlTechArticleMy page is encoded in UTF-8. What can I do to ensure that the exported excel will not be garbled? And because different operating systems have different system codes, they must provide different...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template