php中文转化为英文,json转码_解决PHP的json_encode处理中文被转码为全英文的方法...
摘要 騰興網(wǎng)為您分享:解決PHP的json_encode處理中文被轉(zhuǎn)碼為全英文的方法,余額寶,視達(dá)網(wǎng),千題庫(kù),汽修寶等軟件知識(shí),以及馬上行動(dòng),芝麻手,叉叉mt,中微家校通,雷鳥(niǎo)郵件,我在找你,pads2007,西伯利亞v3,文字類(lèi)游戲,科領(lǐng),戰(zhàn)爭(zhēng)之人突擊小隊(duì)2補(bǔ)丁,docx文檔,bridge,寧夏博物館,實(shí)時(shí)變聲等軟件it資訊,歡迎關(guān)注騰興網(wǎng)。最近使用json_encode轉(zhuǎn)換數(shù)組為json數(shù)據(jù),儲(chǔ)存在數(shù)據(jù)庫(kù)里面,因?yàn)樽侄蔚拈L(zhǎng)度個(gè)內(nèi)容不確定,就只能使用這個(gè)方法了,但是使用json_decode解析為數(shù)組以后,卻出現(xiàn)了類(lèi) 似”u590fu5a03u7684u8b...
最近使用json_encode轉(zhuǎn)換數(shù)組為json數(shù)據(jù),儲(chǔ)存在數(shù)據(jù)庫(kù)里面,因?yàn)樽侄蔚拈L(zhǎng)度個(gè)內(nèi)容不確定,就只能使用這個(gè)方法了,但是使用json_decode解析為數(shù)組以后,卻出現(xiàn)了類(lèi)
似”u590fu5a03u7684u8bf1u60d14u5979u7684u6280u5de7″,通過(guò)查詢(xún)百度,這應(yīng)該是UCS-2編碼的字符串,那么如何轉(zhuǎn)換這個(gè)字符串呢?
其實(shí)在在php5.2以前的版本中做json_encode轉(zhuǎn)換的時(shí)候的時(shí)候。中文會(huì)被unicode編碼, php5.3加入了options參數(shù), 5.4以后才加入JSON_UNESCAPED_UNICODE,這個(gè)參數(shù),不需要做escape和unicode處理。 所以在5.4之前都需要對(duì)中文做個(gè)處理。
php5.4里面的處理
json_encode($str,?JSON_UNESCAPED_UNICODE);php5.4之前,有兩種方法處理
方法一
?function?encode_json($str){??????return?preg_replace("/u([0-9a-f] )/ie",?"iconv('UCS-2',?'UTF-8',?pack('H4',?'\\\\1'))",?$code);??}在實(shí)際應(yīng)用中有個(gè)問(wèn)題,部分字符會(huì)掉,不止為何,如字符串:”日期11.2″會(huì)被變成”日期.2″。
方法二
?function?encode_json($str)?{????return?urldecode(json_encode(url_encode($str)));??}function?url_encode($str)?{????if(is_array($str))?{????????foreach($str?as?$key=>$value)?{????????????$str[urlencode($key)]?=?url_encode($value);????????}??????}?else?{????????$str?=?urlencode($str);????}????return?$str;??}本站使用的是虛擬主機(jī),就沒(méi)法修改php的版本了,所以就只能采用第一種方法了,不過(guò)方法確實(shí)還是有效果的。
方法三?function?decodeUnicode($str){??return?preg_replace_callback('/\\\\\\\\u([0-9a-f]{4})/i',???create_function(????'$matches',????'return?mb_convert_encoding(pack("H*",?$matches[1]),?"UTF-8",?"UCS-2BE");'???),???$str);}相關(guān)推薦
總結(jié)
以上是生活随笔為你收集整理的php中文转化为英文,json转码_解决PHP的json_encode处理中文被转码为全英文的方法...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: BERT文本分类,代码超基础、超详细解析
- 下一篇: php签到,ThinkPHP签到代码