2014-11-22 121 views
0

我对我的产品的某些json解码有问题,它们有特殊字符“æøå”。PHP json解码与解决方案

解码码+呼应:

$products = json_decode($details['items'],true); 
foreach($products as $pro){ 
.. 
<?php echo $pro['name']; ?> 
.. 

在我的数据库产品的名称看起来是这样的: '水疗¥NER'。然而,在回声中是:'Spu00e5ner'。它需要是'Spåner'。

我知道代码没有更新,但必须有一种方法来显示特殊字符。

+0

这看起来像Unicode字符未被正确处理的问题(U + 00e5解码为一个)。在[这个SO问题](http://stackoverflow.com/questions/3650754/unicode-string-php)的答案可以有帮助吗? – 2014-11-22 13:48:38

+0

这没有帮助:/ – 2014-11-22 13:55:53

+0

http://stackoverflow.com/questions/279170/utf-8-all-the-way-through – georg 2014-11-22 14:12:34

回答

0

我做了一个功能,可以帮助你解决你的问题。

function convertChars($char){ 

$return = html_entity_decode(htmlentities($char, ENT_QUOTES, 'UTF-8'), ENT_QUOTES , 'ISO-8859-15'); 
$return = iconv("UTF-8","ASCII//TRANSLIT",$return); 
return strtolower(preg_replace('/[^a-zA-Z0-9]+/','',$return)); 

}