Php 阵列密钥的UTF-8编码问题
我已经看到许多与UTF-8编码问题相关的问题,但大多数都试图对数组值进行编码 我的问题是数组键 我想对一个数组进行编码,该数组包含具有特殊字符的键 这就是我的数组在没有Php 阵列密钥的UTF-8编码问题,php,arrays,json,utf-8,Php,Arrays,Json,Utf 8,我已经看到许多与UTF-8编码问题相关的问题,但大多数都试图对数组值进行编码 我的问题是数组键 我想对一个数组进行编码,该数组包含具有特殊字符的键 这就是我的数组在没有json\u encode的情况下的外观: array(2) { ["Paição"]=> string(8) "Paição" ["São"]=> string(10) "São Paulo" } 使用json\u encode($array): 到目前为止,我已尝试解决这些问题: utf8\u e
json\u encode
的情况下的外观:
array(2) {
["Paição"]=>
string(8) "Paição"
["São"]=>
string(10) "São Paulo"
}
使用json\u encode($array)
:
到目前为止,我已尝试解决这些问题:
utf8\u encode()
JSON\u UNESCAPED\u UNICODE
$array=array\u map('htmlentities',$array)$json=html_实体_解码(json_编码($array))代码>
您可以尝试在
json\u encode()
之前urlencode()
您的字符串,然后url\u decode()
返回json\u encode()
如果您在浏览器中查看json\u encode()结果,可能会添加:
header('Content-Type: text/plain; charset=UTF-8');
或手动将行添加到标题:
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
将解决您的问题而您的问题是…可能重复
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />