将linux文件更改为enconding类型utf8而不转换字符

时间:2016-06-23 07:18:50

标签: php linux encoding utf-8

这个问题现在让我烦恼!这就是我在这里问的原因。 我知道有很多关于编码的文章和主题,但无法找到我需要的答案。

目标:
我想比较两个包含完全相同字段和字符集的mysql表。
差异将保存在文件中,并在比较后导入

我的方式
- MySQL PDO Connection使用变量"设置名称utf8"
- 文本通过" file_put_content"到文件

问题:
具有差异的文件类型不是utf8,并且包含与源表不同的字符。 将文件导入数据库后,它还包含表中的错误字符。

猜想:
源表包含非utf8字符。如果列设置为utf8,这是否可行? 如果这是真的,我怎么能将这些字符转换回utf8?

1 个答案:

答案 0 :(得分:0)

您是否尝试过将BOM(https://en.wikipedia.org/wiki/Byte_order_mark)添加到文件的开头?在调用file_put_contents之前,先在文本中添加一个简单的'\ xEF \ BB \ BF'。