一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php中json_encode UTF-8中文亂碼的更好解決方法

php中json_encode UTF-8中文亂碼的更好解決方法

2020-07-29 16:13whsnow PHP教程

網上找到說json_encode編碼設置為UTF-8中文就不會亂碼,在用過一段時間之后就不太管用了,下面與大家分享更好的方法

最近在接口代碼當中用到過json_encode,在網上找到說json_encode編碼設置為UTF-8中文就不會亂碼,經驗證這辦法確實是有效果的,但是不知道為什么,代碼在用過一段時間之后就不太管用了。以下是自己的解決json_encode的辦法。有更好的方法請分享出來吧!

第一種:

這種簡單的做一個代碼轉換,urlcode之后再返回所需數組

我代碼這樣就足夠了。

代碼如下 復制代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public static function encodeOperations ($array)
 
{
 
foreach ((array)$array as $key => $value) {
 
if (is_array($value)) {
 
encodeOperations($array[$key]);
 
} else {
 
$array[$key] = urlencode(mb_convert_encoding($value,'UTF-8','GBK'));
 
}
 
}
 
return $array;
 
}

第二種:

這種是在網上看到的,然后就是有評論說會出現無限循環的問題,但是這顯然很全面的,然后我測試之后也確實有,貼這里僅供參考

代碼如下

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/**************************************************************
 
*
 
* 使用特定function對數組中所有元素做處理
 
* @param string &$array 要處理的字符串
 
* @param string $tocode 編碼后
 
* @param string $oldcode 編碼前
 
* @param string $function 要執行的函數
 
* @return boolean $apply_to_keys_also 是否也應用到key上
 
* @return array $array 是否也應用到key上
 
* @access public
 
*
 
*************************************************************/
 
function encodeOperations (&$array, $function, $tocode=false,$oldcode=false,$apply_to_keys_also = false)
 
{
 
foreach ($array as $key => $value) {
(m.ythuaji.com.cn)
if (is_array($value)) {
 
encodeOperations($array[$key], $function, $apply_to_keys_also);
 
} else {
 
if($tocode&&$oldcode) {
 
if(function_exists(mb_convert_encoding)) {
 
$value = mb_convert_encoding($value,$tocode,$oldcode);
 
}else{
 
return "error";
 
}
 
}
 
$array[$key] = $function($value);
 
}
 
 
if ($apply_to_keys_also && is_string($key)) {
 
$new_key = $function($key);
 
if ($new_key != $key) {
 
$array[$new_key] = $array[$key];
 
unset($array[$key]);
 
}
 
}
 
}
 
return $array;
 
}
 
 
/****from:http://m.ythuaji.com.cn/bc/php/**********************************************************
 
*
 
* 將數組轉換為JSON字符串(兼容中文)
 
* @param array $array 要轉換的數組
 
* @return string 轉換得到的json字符串
 
* @access public
 
*
 
*************************************************************/
 
function JSON($array) {
 
arrayRecursive($array, 'urlencode', true);
 
$json = json_encode($array);
 
return urldecode($json);
 
}

對中文返回是null空的話我們需要進行字符轉換成uft8或者先使用urlencode進行編譯呼。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: xxxxx性13一14 | 日韩一区在线播放 | 免费国产之a视频 | 99国产成人精品2021 | 黄瓜视频黄版 | 福利视频一区青娱 | 国产成人高清亚洲一区91 | 韩剧网3600热播剧 | 国产欧美日韩综合 | 调教小龙女 | 婷射吧| 91理论片午午伦夜理片久久 | 姐姐不~不可以动漫在线观看 | 古代翁熄乩伦小说h | 国产小视频在线 | 男女男在线精品网站免费观看 | juy_661佐佐木明希在线播放 | 国产成人亚洲精品乱码在线观看 | 高清国产欧美一v精品 | 日韩成片 | 五月激激激综合网色播免费 | 色哟哟在线资源 | 日本孕妇大胆孕交 | 成人一区二区丝袜美腿 | 成人香蕉xxxxxxx | 成人国产网站v片免费观看 成人国产精品视频 | 武侠古典久久亚洲精品 | 国产成人精品在线 | 9久热久爱免费精品视频在线观看 | 日产欧产va高清 | 青青草国产精品久久久久 | 成人 在线欧美亚洲 | 无毛黄片| 狠狠色婷婷丁香六月 | 亚洲精品免费视频 | 国产成人啪精品午夜在线观看 | 1024国产高清精品推荐 | 女人爽到喷水的视频免费 | 亚洲热图| 无人影院免费观看 | 亚洲 日本 中文字幕 制服 |