PHP將unicode轉utf8最簡法


最近開發時遇到Unicode編碼問題,找了半天才知道PHP並沒有Unicode轉碼函數,終於發現用一行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
echo preg_replace_callback("#\\\u([0-9a-f]+)#i",function($m){return iconv('UCS-2','UTF-8', pack('H4', $m[1]));},$str);

非常強大的一行代碼解決方法

還可以用以下辦法解決:

echo json_encode("漢字", JSON_UNESCAPED_UNICODE);  

 

PS:居然發現php有 Unicode_decode函數,可惜是實驗性的。

 


免責聲明!

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



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