PHP將uncode轉utf8,一行代碼解決問題


在很多場合能看到unicode編碼過的文字,如“\u6d3b\u52a8\u63a5\u53e3”,雖然程序會認識,但人眼無法閱讀,很不方便,網絡上很多人寫了很多的轉換函數,但是一個比一個臃腫,終於發現用一行PHP代碼解決的方案:

$str  = '{"success":true,"msg":"\u6d3b\u52a8\u63a5\u53e3"}';
echo $str= preg_replace("#\\\u([0-9a-f]+)#ie","iconv('UCS-2','UTF-8', pack('H4', '\\1'))",$str);

已經無法找到這行代碼的原始出處,PHP原生的函數很多功能很強大,但很少人能運用好,真是遺憾。


如果服務端是自己寫的,聽說php5.4版本以上還可以用以下辦法解決:

echo json_encode("漢字", JSON_UNESCAPED_UNICODE);  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM