mysql - 从mysql字符串回显特殊字符不起作用
问题描述
我有一个工作代码并将其移动到一个新服务器,从 php5 到 php7。谷歌搜索一个星期对我没有帮助,所以我问你们。
我在 sql 数据库中有一些带有欧元符号的信息: €99.00 该信息存储为 utf16-general-ci。
如果选择了信息并将其放入字符串中,我会使用以下命令对其进行回显: echo $row["Total"]
;
在旧服务器上显示:€99.00
在新服务器上显示:€99.00
我想显示欧元符号而不是字符代码。
我尝试更改为 utf-8,但这无济于事。也htmlentities()
或htmlspecialchars()
不做任何事情。
解决方案
如链接如何将 Windows-1252 字符转换为 php 中的值?
问题是Windows-1252与ISO-8859-1。
为了解决这个问题,我使用了:
mb_convert_encoding($row["Total"], "Windows-1252", "UTF-8")
更多信息可以在这里找到:https ://www.i18nqa.com/debug/bug-iso8859-1-vs-windows-1252.html
推荐阅读
- amazon-web-services - 将 Route 53 连接到 DigitalOcean CDN
- reactjs - 谁负责不同场景下的子域?
- java - 如何在 Spring 中使用驱动程序类配置多个 DataSource?
- javascript - 使用真实设备时,转换为 css 的设备方向数据表现得很奇怪
- python - 具有两个条件的排序列表
- json - jq合并多个json文件合并任何数组元素
- adobe - 在为链接生成缺少的 documentId 和 InstanceIds 后,需要为 .indd 元信息添加 documentId 和 instanceId 标签
- xcode - 如果构建目录涉及符号链接,Xcode 构建将失败
- r - 如何在没有循环的情况下生成顺序字符向量?
- r - 合并两个 exprs() 数据帧