为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