【发布时间】:2013-12-21 14:08:20
【问题描述】:
我在做:
file_put_contents("txt/myfile.txt", $fileContents);
我尝试了很多方法来强制我的文本文件为 ANSI,例如:
$fileContents = mb_convert_encoding($fileContents , mb_detect_encoding($fileContents , mb_detect_order(), true), 'WINDOWS-1252');
我也试过了:
$fileContents = iconv("ISO-8859-1", "WINDOWS-1252", $fileContents );
我需要 ANSI,因为当我使用 MS-DOS 中的“type”命令(Windows 7 中的 cmd.exe)打开文本文件时应该看起来不错
如果我打开当前文件,我可以看到 UTF-8 BOM:
C:\Users\XXX>输入 C:\myfile.txt
´╗┐V017666999 00000000000000005350005122013
如果我用 Notepad++ 打开文件并应用“转换为 ANSI”,我会得到(我需要的):
C:\Users\XXX>输入 C:\myfile.txt
V017666999 00000000000000005350005122013
有什么办法可以解决这个问题吗?提前致谢。
【问题讨论】:
-
您可能需要使用这个:php.net/manual/en/function.setlocale.php 设置为您想要的编码。
-
请添加答案并将其标记为答案,我没有看到您的问题中隐藏了答案。谢谢:)