首页 > 解决方案 > 从mysql字符串回显特殊字符不起作用

问题描述

我有一个工作代码并将其移动到一个新服务器,从 php5 到 php7。谷歌搜索一个星期对我没有帮助,所以我问你们。

我在 sql 数据库中有一些带有欧元符号的信息: €99.00 该信息存储为 utf16-general-ci。

如果选择了信息并将其放入字符串中,我会使用以下命令对其进行回显: echo $row["Total"];

在旧服务器上显示:€99.00 在新服务器上显示:€99.00

我想显示欧元符号而不是字符代码。

我尝试更改为 utf-8,但这无济于事。也htmlentities()htmlspecialchars()不做任何事情。

标签: mysqlstringechospecial-charactersphp-7

解决方案


如链接如何将 Windows-1252 字符转换为 php 中的值?

问题是Windows-1252ISO-8859-1

为了解决这个问题,我使用了:

mb_convert_encoding($row["Total"], "Windows-1252", "UTF-8")

更多信息可以在这里找到:https ://www.i18nqa.com/debug/bug-iso8859-1-vs-windows-1252.html


推荐阅读