php json_encodeの中国語文字化けコードを解決する方法
Aug 15, 2020 am 09:18 AMphp encode中文乱码的解决办法:首先打开相应的PHP文件;然后使用正则语句“preg_replace("#\\\u([0-9a-f]{4})#ie","iconv('UCS-2BE', 'UTF-8'...)”将编码替换成中文即可。
推荐:《PHP视频教程》
本文列举3个方法,实现json_encode()后的string显示中文问题。
做接口时不需要,但存log时帮了大忙了。
在贴代码前,必须贴上官方param和return,链接:http://php.net/manual/zh/function.json-encode.php
参数
value
-
待编码的
value
,除了resource 类型之外,可以为任何数据类型该函数只能接受 UTF-8 编码的数据
options
由以下常量组成的二进制掩码:
JSON_HEX_QUOT
,JSON_HEX_TAG
,JSON_HEX_AMP
,JSON_HEX_APOS
,JSON_NUMERIC_CHECK
,JSON_PRETTY_PRINT
,JSON_UNESCAPED_SLASHES
,JSON_FORCE_OBJECT
,JSON_UNESCAPED_UNICODE
.
返回值
编码成功则返回一个以 JSON 形式表示的 string 或者在失败时返回 FALSE
。
<?php // json_encode() 保持中文方法详解 $arr['city'] = '北京'; $arr['name'] = 'weilong'; // 直接输出 // Res: {"city":"\u5317\u4eac","name":"weilong"} echo json_encode($arr), "\n"; #### 1. 加参数,PHP版本>=5.4 // Res: {"city":"北京","name":"weilong"} echo json_encode($arr, JSON_UNESCAPED_UNICODE), "\n"; // php >= 5.4 #### 2. 正则替换,json_encode后,正则将编码替换成中文 // Res: {"city":"北京","name":"weilong"} echo preg_replace("#\\\u([0-9a-f]{4})#ie", "iconv('UCS-2BE', 'UTF-8', pack('H4', '\\1'))", json_encode($arr)), "\n"; // PHP 5.5 /e修饰符被弃用 echo preg_replace_callback("/\\\u([0-9a-f]{4})/i", function($match) { // php >= 5.3 都可以 return json_decode("\"{$match[0]}\"", true); }, json_encode($arr)), "\n"; #### 3. urldecode()、urlencode()函数,不推荐 // Res1: null, Res2: {"city":"北京","name":"weilong"} echo urldecode(json_encode(urlencode($arr))), "\n"; $arr['city'] = urlencode($arr['city']); // urlencode()参数必须是string echo urldecode(json_encode($arr)), "\n"; // 另外注意json_decode()参数区别。 $arr['city'] = '北京'; $arr['name'] = 'weilong'; $str = json_encode($arr); $str2 = json_decode($str); $str3 = json_decode($str, true); print_r($str2); // object /* Res: stdClass Object ( [city] => 北京 [name] => weilong ) */ print_r($str3); // array /* Res: Array ( [city] => 北京 [name] => weilong ) */
以上がphp json_encodeの中国語文字化けコードを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法
