php json Chinese conversion method: 1. Urlencode the Chinese field; 2. Use the json_encode function to encode; 3. Use urldecode to process the result.
The operating environment of this article: Windows7 system, PHP7.1 version, Dell G3 computer
How to convert php json to Chinese ? How does PHP convert Chinese json format strings normally?
How to convert json format strings, two functions are provided in the PHP manual:
json_encode: JSON for variables Encoding
json_decode: Encode a string in JSON format
Let’s look at an example:
$arr = ['a', 'b', 'c'];echo json_encode($arr);
The output is:
["a","b","c"]
However, when we When Chinese characters are put into the array, a problem will arise:
$arr = [ '世界', '你好',];echo json_encode($arr);
The output result is:
["\u4e16\u754c","\u4f60\u597d"]
This result is obviously not what we want, but why does this happen? Because when our value contains Chinese, when PHP performs json encoding on it, the bottom layer will perform unicode encoding on the Chinese, causing the result to be unreadable.
So how to solve it?
Method 1
You can use the urlencode and urldecode methods to bypass the process of transcoding to unicode. First urlencode the Chinese field, then json_encode, and finally use urldecode to process the result, and it will work normally Display Chinese. The specific code is as follows:
$arr = [ '世界', '你好',];echo urldecode(json_encode(array_map('urlencode', $arr)));
The output result is:
["世界","你好"]
Method 2
Since PHP5.4 version, the official has added a new option to Json: JSON_UNESCAPED_UNICODE. After adding this option, Chinese will not be automatically encoded. The specific code is as follows:
$arr = [ '世界', '你好',];echo json_encode($arr, JSON_UNESCAPED_UNICODE);
The output is:
["世界","你好"]
Look, this is the result we want:)
Attention
requires our attention Unfortunately, since json_encode and json_decode only support UTF-8 encoded characters, gbk characters must be converted if you want to use the json function.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of How to convert php json to Chinese. For more information, please follow other related articles on the PHP Chinese website!