2014-11-17 55 views
-1

我正在将数据从CSV文件导入数据库。在CSV文件中,有很多奇怪的字符,如(é,ë,...)需要转换为& eacute,& euml以存储在数据库中。现在所有奇怪的字符都被转换为问号。但是我用什么函数来转换它们。 HTML_ENTITIES,utf8_decode,...?PHP:防止编码é到?

我使用UTF8

+0

使用'htmlspecialchars()'功能的PHP – vaso123

+0

http://stackoverflow.com/questions/16231635/character-encoding-problems-with-reading-a-csv-file –

回答

1

嗯......这htmlentities($string, ENT_COMPAT | ENT_HTML401, 'UTF-8');。但这种做法是错误的。

清单:

  1. 文件的数据是UTF-8
  2. 当您使用的字符串常量字符串函数(如str_replace('e', 'é', $foo)),该文件是UTF-8
  3. 您所使用的数据库连接允许运输UTF-8编码字符并为此配置(针对MySQL的SET NAMES 'utf8'
  4. Content-Type页面的标题(或元标记)告诉浏览器期望UTF-8