我正在使用 JSON 将数组从 PHP 发送到 Javascript。该数组正在从数据库中获取数据。我搜索了有关 JSON 和外来字符问题的多个主题,每个人都说要解决问题,您必须将编码设置为 utf-8。我认为我已经做到了,但这对我没有帮助。所以我运行测试看看有什么问题。为了简单起见,我尝试将带有波兰字符的字符串传递给 json_encode() 函数。所以我创建了 index.php 文件。在我的文本编辑器中,我选择在没有 BOM 的 UTF-8 中编码选项,然后我开始编码:
<?php
header('Content-Type: text/html; charset=utf-8');
$data = "polish characters: ążśęłóćźć";
$jsonData = json_encode($data);
echo mb_detect_encoding($data) . "<br />;
echo $jsonData;
?>
结果是:
UTF-8
"polish characters : \u0105\u017c\u015b\u0119\u0142\u00f3\u0107\u017a\u0107"
我仍然无法输出波兰语字符。我不知道出了什么问题?请帮忙 :)