Home > Backend Development > PHP Problem > What to do if mac php exports excel with garbled characters

What to do if mac php exports excel with garbled characters

藏色散人
Release: 2023-03-11 19:44:01
Original
2700 people have browsed it

The solution to garbled excel exported by mac php: first open the corresponding PHP file; then set "header('Content-Type: application/vnd.ms-excel; charset=gb18030');".

What to do if mac php exports excel with garbled characters

The operating environment of this article: macOS10.15 system, PHP7.1 version, MacBook Air 2019 computer

mac php exports excel garbled characters what to do?

(PHP) Repair mac book export csv xls xlsx Chinese garbled problem

Background: Under normal circumstances, when we export csv (or xls or xlsx), we need to pass the file First, set the text encoding for file output:

header('Content-Type: application/vnd.ms-excel; charset=utf8');
Copy after login

If you use utf8 encoding, generally speaking, wps is easy to use, but office is not easy to use (office will be garbled when opened);

Then in For a long, long time, I have been using gbk or gb2312 to solve this problem:

header('Content-Type: application/vnd.ms-excel; charset=gbk');
Copy after login

I just discovered today that in a mac book environment, setting gbk encoding is actually not possible. It will also be garbled. After going through Baidu, I found out that it should be set to gb18030

header('Content-Type: application/vnd.ms-excel; charset=gb18030');
Copy after login

For an introduction to gb18030, see here: https://baike.baidu.com/item/gb18030/3204518


Of course, in addition to modifying the file header, you must also remember to modify the encoding of the content echoed out, such as the output title:

echo mb_convert_encoding(implode(',', array_values($titles)), 'gb18030') . "\n";
Copy after login

Modified export class:

https://www.cnblogs.com/tujia/p/11358096.html


End.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of What to do if mac php exports excel with garbled characters. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
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