解析多语言提要的最佳实践

时间:2011-06-30 08:24:36

标签: php mysql

我在解析来自不同Feed的数据时遇到问题,其中一些使用英语,另一些使用意大利语,另一些使用西班牙语。我正在使用PHP脚本解析并将解析后的数据保存到我的MySQL数据库中。

问题在于,当我查看包含“非常见”字符的项目时,例如:“ Strage diViaregioPiù”当我查看我的数据库时,短语以这种方式存储:“ Strage di Viareggio Più “。

我的数据库可以使用那种类型的字符,因为当我输入manualy它工作正常,在原始feed(rss文件)这句话也很好,我认为是我的PHP服务器正在更改字母。我怎么解决这个问题?谢谢!

3 个答案:

答案 0 :(得分:2)

确保数据库使用UTF-8(正如您所说),PHP脚本的内部编码设置为UTF-8,您可以使用{{3}来实现}。如果您正在读取HTTP请求中的数据,只要请求正确标记其自己的编码,那么该请求应该是您所需要的。

答案 1 :(得分:0)

看起来输入数据是UTF-8,但是DB表的字符集/校对 - ASCII。我建议到处都有UTF-8。

答案 2 :(得分:-2)

在保存到MySQL之前,您需要实现的是:

http://php.net/manual/en/function.htmlentities.php

检查这些不同的线程以获取更多信息

我觉得令人难以置信的是,这个问题在过去24小时内收到了-2而没有任何评论。

从发布的问题:

  

我正在使用PHP脚本解析并将解析后的数据保存到我的MySQL数据库中。

  

我认为我的PHP服务器正在更改这封信。我怎么解决这个问题?谢谢!

到目前为止发布的答案与MySQL的编码和设置有关。提问的人已明确表示他可以手动插入特殊字符并且没​​有问题:

  

我的数据库可以使用那种善意的角色,因为当我输入那个manualy它工作正常

我的回答是帮助他将角色转换成一个html实体,这将解决他在使用RSS提要时遇到的问题并回答发布的问题。