Php json_编码utf8

Php json_编码utf8,php,utf-8,json,Php,Utf 8,Json,我在mysql数据库中放了一些数据,效果很好。 但当我使用json_encode获取数据时,我会像这样返回ist: {"idpostdata":"49","artID":null,"timestamp":"06.11.2012 13:35","lat":"51.496911","lon":"7.4022327","cellID":null,"road":"Wittener Stra\u00dfe","suburb":"Eichlinghofen","city":"Dortmund","postd

我在mysql数据库中放了一些数据,效果很好。 但当我使用json_encode获取数据时,我会像这样返回ist:

{"idpostdata":"49","artID":null,"timestamp":"06.11.2012 13:35","lat":"51.496911","lon":"7.4022327","cellID":null,"road":"Wittener Stra\u00dfe","suburb":"Eichlinghofen","city":"Dortmund","postdatacol":null,"state_district":"Regierungsbezirk Arnsberg","state":"North Rhine-Westphalia","country_code":"de"}
您可以看到
“道路”:“Wittener Stra\u00dfe”
不是正确的名称,它必须是Wittener Straße

我的代码:

<?php
$sql = mysql_query("SELECT * FROM postdata");

while ($ds = mysql_fetch_assoc($sql)) 
  $output[]=$ds;
echo "{uTraf:";
  print(json_encode($output));
echo  "}";
mysql_close($dz);
?>

怎么了

怎么了

没什么
\uxxx
是JSON编码UTF-8字符的方式


当您使用正确的JSON解码方法解码JSON时,它看起来会再次正常。

没有问题这是JSON_编码的一部分,以防止错误的字符转换:

查找:\u00df


当您
json\u解码($string)时应该再次修复它

将json数据保存到mysql时使用addslashes。当你把数据拿出来的时候,一切都会好起来。

这并不错误,因为
\u00df
是德国夏普s(ß)的JSON转义序列。问题是,是否真的需要逃跑,如果不是,如何避免逃跑。