讓json更懂中文

2021-09-19 14:36:58 字數 1113 閱讀 2132

相信很多人用php搭後台時候,當ajax用於互動時候,由於字元都被urf-8處理,所以用php的json_encode來處理中文的時候, 中文都會被編碼, 變成不可讀的, 類似」\u*」的格式, 而且還會在一定程度上增加傳輸的資料量。

<?php

$str = "讓json更懂中文";

echo json_encode($str);

//輸出:"\u8ba9json\u66f4\u61c2\u4e2d\u6587"

總結幾種解決方法。

思路是這樣的,對字串進行url加密處理,之後json_encode後再解密

<?php

function json_encode_zn($data) else if(is_array($data))

});}

return urldecode(json_encode($data));

}$str = "讓json更懂中文";

$arr = array("id"=>5,"name"=>"中文名字","arr"=>array(1,"weapon","中文"));

echo json_encode_zn($str);//"讓json更懂中文"

echo json_encode_zn($arr);//

<?php

$code = json_encode($str);

echo preg_replace("#\\\u([0-9a-f]+)#ie", "iconv('ucs-2', 'utf-8', pack('h4', '\\1'))", $code);

//linux使用preg_replace("#\\\u([0-9a-f])#ie", "iconv('ucs-2be', 'utf-8', pack('h4', '\\1'))", $code);

自從php5.3的json_encode加入了options引數,5.4版本新加了json_unescaped_unicode,故名思議, 就是說, json不要編碼unicode.

echo json_encode("中文", json_unescaped_unicode);//中文

讓Json更懂中文 JSON UNESCAPED

複製 如下 php echo json encode 中文 u4e2d u6587 這就讓我們這些在 做開發的同學,很是頭疼,有的時候還不得不自己寫json encode.而在php5.4,這個程式設計客棧問題終於得以解決,json新增了乙個選www.cppcns.com項 json unescap...

謝謝你的背叛,讓我更懂這個世界

這個世界並沒有所謂的巧合,有的只是必然。原來乙個人的孤單不算孤單,想念乙個早已離去的人,才是真的孤單。生活是一場漫長的旅行,不要浪費時間,去等待那些不願與你攜手同行的人。愛情,有時侯脆弱得像一朵枯萎的玫瑰花,只有花形而無色彩。我從不否定過去,也不想用過去牽扯未來 命運決定誰會進入我們的生活,內心決定...

如何用好Gson讓json使用更方便之解析篇

在以往專案中比較常用的無非就是解析json或者生成json 首先咱們先使用類庫 implementation com.google.code.gson gson 2.8.5 注 本人android studio版本比較高 例項解析篇 然後生成pojo類 我暫時命名為objectinfo 注 需要養成...