客戶端對中文的處理是使用utf-8內(nèi)碼的,并且json對中文的處理也是使用utf-8,因此,ajax->php的時候,php需要utf8->gbk;php處理好后,在交給json函數(shù)處理,之前需要gbk->utf8,然后將結(jié)果php->ajax.
- <?php
- $code = json_encode($str);
- $code = preg_replace("#u([0-9a-f]+)#ie", "iconv('ucs-2', 'utf-8',
- pack('h4', '1'))", $code);
- ?>
json_encode() 給含有中文的內(nèi)容進行編碼時,會出現(xiàn)類似于u5c71u4e1c這樣的代碼,雖然使用jquery或者json_decode()進行解碼的時候,下面看個實例:
- <?php
- $json = array (
- 0 =>
- array (
- 'id' => '13',
- 'name' => '乒乓球',
- ),
- 1 =>
- array (
- 'id' => '17',
- 'name' => '籃球',
- )
- )
- ?>
- <?php
- [{"id":"13","name":null}
- ,{"id":"13","name":null}]
- ?>
新聞熱點
疑難解答