在 PHP 中将字符串转换为 UTF-8 的最佳方法是什么?
我想知道使用 PHP 将字符串转换为 UTF-8 的最佳方法是什么。
以下内容在页面上看起来没问题,但在 MySQL 中有些字符看起来是乱码。
- MYSQL:
升级活动 - 新款 Mazda2 每月 124.99 英镑起。代表 3 年内年利率为 0%。至少需要 50% 的押金。请致电 xxxxxxxxxxxx 获取试驾、信息或条款与条件。
- 页面:
升级活动 - 新款 Mazda2 每月 124.99 英镑起。代表 3 年内年利率为 0%。至少需要 50% 的押金。致电 xxxxxxxxxxxx 进行测试、信息或 Ts&Cs。
我查看了 iconv、mb_string、html_entity_decode、htmlentities、mb_convert_encoding 等。
数据库排序规则是 utf8_unicode_ci,表的字符集是 utf8。
I am wondering what the best way to convert an string into UTF-8 using PHP is.
The following looks ok on the page, but in MySQL some characters are looking garbled.
- MYSQL:
UPGRADE EVENT – New Mazda2 from £124.99 per month. Representative 0% APR over 3 years. Min 50% deposit required. Call xxxxxxxxxxxx for test drive, info or Ts&Cs.
- ON PAGE:
UPGRADE EVENT - New Mazda2 from £124.99 per month. Representative 0% APR over 3 years. Min 50% deposit required. Call xxxxxxxxxxxx for test drive, info or Ts&Cs.
I have looked at iconv, mb_string, html_entity_decode, htmlentities, mb_convert_encoding etc..
The database collation is utf8_unicode_ci and the tables' charset is utf8.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试使用
mysql_query("SET NAMES 'utf8'")
(或dbh->exec("SET NAMES 'utf8'")
)设置连接的编码。Try using
mysql_query("SET NAMES 'utf8'")
(ordbh->exec("SET NAMES 'utf8'")
) to set the encoding of the connection.您应该还设置 mysql 连接的编码。尝试使用
SET NAMES utf8
You should alos set encoding of mysql connection. Try to use
SET NAMES utf8