我必须用 ansi 编码保存一个文本文件,在 PHP 中包含特殊字符“thorn”或“þ”。当我简单地将刺放在 PHP 中时,它在文件中看起来像“ţ”。我尝试了很多不同的方法,但都没有成功,也不知道如何才能正确地拯救这根刺。你能给我一些建议吗?谢谢。
在 iconv('UTF-8', 'Windows-1252', $this->filedata) 之后;
þ ==> ţ
utf8_encode("þ") ==> Ăľ
我使用 Netbeans 15 进行编码,使用 notepad++ 检查结果
Notepad++ 可以正确转换为ANSI。是否可以在 PHP 中使用 Notepad++ 来转换文件?
mb_detect_encoding() 进行猜测:不能保证生成正确的结果。如果您通过其他方式知道输入文件的字符编码,您会过得更好。
如果您的文件已经包含
þ
的代码点(===字符),它可能已经在 windows-1252 或 iso-8859-1 中编码,并且不需要转换。
这种工作可能会令人困惑,因为任何文本的输出呈现都取决于系统或应用程序区域设置。假设文件具有与编码时使用的字符集不同的字符集,则可以呈现该文件。使用十六进制转储程序检查该文件。或者如果可能的话,在 utf-8 上标准化你的文本文件。
你没有给我们足够的信息来帮助你。