Json_encode重音问题

时间:2014-03-06 15:05:16

标签: php android json

我正在尝试使用json解析网站以查看我的应用程序中的查询结果..我有一个问题。我使用json_encode来显示结果,因为有时我会显示null字符串。我使用这部分代码

$json = array(); 

if(mysql_num_rows($result)){ 
while($row=mysql_fetch_assoc($result)){ 
$json['oscar'][]=$row; 

$json[] = array_map('utf8_encode', $row); 
} 
} 

mysql_close($con); 
echo json_encode($json); 

有了这个,我可以显示一些东西,但口音错了;例如:

Mor\u00ec would be Morì

等等。在这里你可以看到http://www.oscarilfilm.com/newjson.php。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您是否尝试过PHP编码的额外参数?例如:

$json = array(); 

if(mysql_num_rows($result)){ 
    while($row=mysql_fetch_assoc($result)){ 
        $json['oscar'][]=$row; 
        $json[] = array_map('utf8_encode', $row); 
    } 
} 

mysql_close($con); 
echo json_encode($json); 

改为:

$json = array(); 

if(mysql_num_rows($result)){ 
    while($row=mysql_fetch_assoc($result)){ 
        $json['oscar'][]=$row; 
        $json[] = array_map('utf8_encode', $row); 
    } 
} 

mysql_close($con);
echo json_encode($json, JSON_UNESCAPED_UNICODE);

如此page所示。

编辑:要查看UTF-8中的回复,您可以尝试将此行添加到页面的最开头:

<?php header("Content-Type: text/html; charset=utf-8"); ?>