爲Unicode當我使用json_encode編碼西班牙字符它改變了他們這樣的:轉換西班牙字符用PHP
áéíóú¿¡üñ
要這樣:
\u00e1\u00e9\u00ed\u00f3\u00fa\u00bf\u00a1\u00fc\u00f1
當我使用此代碼:
$str = array();
$str[] = 'áéíóú¿¡üñ';
$str[] = 'áéíóú¿¡üñ';
$json_data = json_encode($str);
我的問題是如何在使用json_encode之前將字符轉換爲這種格式?如何將字符轉換爲我認爲unicode(?)格式,如圖所示,而不使用json_encode?
iconv()
,然後轉換UTF-8
字符串到十六進制:
試試json_encode($ str,JSON_UNESCAPED_UNICODE); – user1844933
對不起,如果我的問題不清楚 - 我想編碼西班牙字符到unicode而不使用json_encode - 我認爲必須有一個PHP函數這樣做,但我找不到它 –
如果你想通用字符支持,最簡單事實上是使用'json_encode':'substr(json_encode($ str),1,-1)'。否則,您需要定義如何處理BMP以外的字符; JSON已經定義了它...... – deceze