What to do if php json is converted to array garbled code
When performing php json to array operations, garbled characters are often encountered. The root of this problem is the inconsistency of character sets.
The default character set of Java, Python and other languages is utf-8, while the default character set of php is ISO-8859-1. Therefore, when processing json strings, if the character set of the json string is utf-8, and the character set of php is ISO-8859-1, then the converted array will be garbled.
Let’s take a look at how to solve this problem.
1. Specify the character set of the json string
When we know the character set of the json string, we can solve the problem by specifying the character set.
Sample code:
$json_str = iconv('utf-8','ISO-8859-1',$json_str); //将json字符串的字符集从utf-8转换为ISO-8859-1 $arr = json_decode($json_str, true); //将json字符串转换成数组
2. Change the php default character set
When we cannot know the character set of the json string, or when we need to process a large number of json strings, PHP default character set can be changed. In this way, there will be no garbled characters when processing any json string.
The way to change the default character set of php is to modify it in the php.ini file. We can complete this operation through the following steps:
- Open the php.ini file
Enter the following command in the terminal to open the php.ini file:
sudo vi /etc/php/7.3/apache2/php.ini
- Modify the default character set
In the php.ini file, find the following two lines, uncomment and modify the character set to utf-8:
;default_charset = "iso-8859-1" default_charset = "utf-8"
- Restart Apache
After saving the php.ini file, you need to restart Apache for the changes to take effect:
sudo service apache2 restart
- Test
After changing the php default character set, we can test whether the json string can be parsed correctly. Sample code:
$arr = json_decode($json_str, true); //将json字符串转换成数组
Summary
Converting json to array garbled characters is a common problem, but it is also an easy problem to solve. We can solve this problem by specifying the character set of the json string or changing the PHP default character set. Either way, you need to understand the concept of character sets in order to do the conversion correctly.
The above is the detailed content of What to do if php json is converted to array garbled code. 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

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

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)
