我有以下代码:
Header('Content-Type: text/html; charset=utf-8');
Header('Content-type: application/json');
$aData['test'] = html_entity_decode("Š");
echo json_encode($aData);
我希望它输出Š,而是输出:
{
test: "Š"
}
在我的本地Xampp服务器上它工作正常,但在真实服务器上没有,可能是某种设置还是有另一种解决方案来解决这个问题?
答案 0 :(得分:1)
这可能是因为您在本地和本地的PHP版本服务器不同。在PHP 5.4之前,html_entity_decode
的默认编码为ISO-8859-1
,但您需要UTF-8
。
这里有两个解决方案:
html_entity_decode("Š", ENT_COMPAT | ENT_HTML401, "UTF-8")