Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 阵列密钥的UTF-8编码问题_Php_Arrays_Json_Utf 8 - Fatal编程技术网

Php 阵列密钥的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

我已经看到许多与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 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" />