您好原谅我对此不熟悉,但我正在尝试从我的php文件中输出一些unicode数据。
假设要输出的字符串是:“SDTếtFestival”
但是我似乎得到了:“SD T \ u1ebft Festival”
这可能很容易被忽视,但我无法弄明白。
我在这里搜索并遵循了解决方案:
PHP代码段:
$sql = "select * from info";
mysqli_query($connection, "set character_set_client='utf8'");
mysqli_query($connection, "set character_set_results='utf8'");
mysqli_query($connection, "set collation_connection='utf8_general_ci'");
$result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection));
$rowCount = $result->num_rows;
$index = 1 ;
$newArray = [];
while($row =mysqli_fetch_assoc($result))
{
$newArray[$row['type']] = $row['content'];
}
echo json_encode($newArray);
我似乎做错了什么?
谢谢!
更新
我已按照重复问题中的解决方案的建议添加了以下代码:
$connection->set_charset('utf8mb4');
mysqli_set_charset($connection, 'utf8mb4');
并删除:
mysqli_query($connection, "set character_set_client='utf8'");
mysqli_query($connection, "set character_set_results='utf8'");
mysqli_query($connection, "set collation_connection='utf8_general_ci'");
但是,输出仍然相同。
更新2: 正如评论中所建议的那样,我确保表和排序规则支持utf8mb4:
我似乎仍然得到相同的输出。