How to solve the problem of garbled xls exported by php
Solution to the garbled code exported by php: 1. Execute the "iconv('utf-8", "gb2312", $filename)" method to transcode "$filename"; 2. Define the Excel character set is "charset=UTF-8".
Recommended: "PHP Video Tutorial"
Php Solution to garbled characters when exporting Excel files
There are two main processes when exporting Excel files with Php:
1. Define the file name
2. Fill in the Excel data
Some garbled characters may occur during these two processes. Let me talk about the solutions:
Solve the garbled characters of the file name:
Garbled characters Reason: The customer uses the Chinese version of Windows system platform, and the file name encoding of the Windows platform is gb2312 (gbk). In order to follow the existing trend, our web page encoding generally uses utf-8 (internationalization) encoding. At this time, when we: When header("Content-Disposition: inline; filename=/"" . $filename . ".xls/""), garbled characters will appear. If your web page encoding is gb2312, then there is no need to consider encoding issues.
Solution: To transcode $filename, execute: iconv('utf-8", "gb2312", $filename). 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 come again, and Linux users will have garbled file names (because the file names on the Linux platform are not gbk encoded).
Considering this problem, I adopted two methods: First: give up some customers, after all, Windows system users account for the vast majority. Second: Like gmail, two download addresses are provided. One file name is gbk encoded, and one file name is utf-8 encoded.
Solution to garbled data in Excel:
Cause of garbled code: 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"), see charset=UTF-8, make it consistent with your web page encoding to solve Excel The internal data is garbled. This is relatively simple!
The above is the detailed content of How to solve the problem of garbled xls exported by php. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Working with database in CakePHP is very easy. We will understand the CRUD (Create, Read, Update, Delete) operations in this chapter.

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

To work on file upload we are going to use the form helper. Here, is an example for file upload.

In this chapter, we are going to learn the following topics related to routing ?

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

Validator can be created by adding the following two lines in the controller.
