首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UTF8 -> Latin1 Difficulty

UTF8 -> Latin1 Difficulty
EN

Stack Overflow用户
提问于 2012-03-19 03:43:56
回答 3查看 1.5K关注 0票数 0

我要失去重音人物了。

我从PHP下载一个使用UTF8的xml文件,而我的PHP脚本使用Latin1。我无法将UTF8转换为Latin1。

我试过这个:

代码语言:javascript
复制
$meta=mb_convert_encoding($meta,'CP1252','UTF-8');

代码语言:javascript
复制
$meta=mb_convert_encoding($meta,'UTF-8');
$meta=mb_convert_encoding($meta,'CP1252','UTF-8');

但无论哪种方式,重音字符都会被打破,变成2个字符。

输入:

代码语言:javascript
复制
<title>First book of zoölogy</title>

输出:

代码语言:javascript
复制
<title>First book of zoo?logy</title>

我自己想出来了,见下面的答案。谢谢大家的帮助!

EN

回答 3

Stack Overflow用户

发布于 2012-03-19 03:46:47

更改表的排序规则,请执行Utf8_general_ci,并在数据库配置之前使用:

代码语言:javascript
复制
mysql_set_charset("utf8");

我觉得这能解决你的问题。

票数 1
EN

Stack Overflow用户

发布于 2012-03-19 04:25:12

这个问题解决了:

代码语言:javascript
复制
$meta=iconv('UTF-8','CP1252//TRANSLIT',$meta);

我以前不知道康涅夫,我以为只有mb_strings可以用,但康涅夫工作得很好。

票数 1
EN

Stack Overflow用户

发布于 2012-03-19 04:12:36

也许您的MySQL服务器的默认字符集是UTF-8。试试这个:

在MySQL连接详细信息之后插入以下查询:

代码语言:javascript
复制
mysql_query("SET NAMES latin1");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9764761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档