我为我的一个应用程序构建了restful api服务。多语言文本存储在数据库中很好,甚至多语言文本在web应用程序中也很好。当我试图通过使用api调用获取数据时,我得到了这样的文本“??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????“谁能帮帮我,拜托。
我尝试使用REST API获取多语言数据,但它显示的文本如下所示:"data": [ { "message_id": "19881758", "message_status": "0", "message": "??? ???? ?????????", "sent_date": "2023-03-27 08:43:24" },
1条答案
按热度按时间3qpi33ja1#
看起来你没有正确处理数据的编码。在执行任何查询之前,你可以尝试将PDO连接的字符集设置为UTF-8。
例如:下面是我用来连接的示例方法
$this->conn->exec("set names utf8");
行将MySQL连接的字符集设置为UTF-8。您还可以尝试使用header()函数设置PHP脚本本身的字符集。
这会将响应的字符集设置为UTF-8,这应该可以解决这个问题。如果它们都不起作用,那么可能是数据库本身没有正确编码。