我正在使用以下代码阅读一个中文文本文件(使用PHP):
$myFile = "test.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
fclose($fh);
print $theData;
test.txt文件内容:
PHP是很好的语言。我喜欢这门语言。
我正在开发一个Web应用程序使用PHP。
执行上述代码后,我没有得到上述文件中的确切内容。
是否有其他方法可以读取包含Unicode字符并打印它的文件。
请提供你的建议。
谢谢,
-Pravin
答案 0 :(得分:1)
您需要指定输出编码以匹配您正在阅读的字符数据的编码。
如果您的文本文件是UTF-8编码,请将以下content-type
标题之一添加到PHP文件的顶部:
header("Content-Type: text/plain; charset=UTF-8"); // output as text file
header("Content-Type: text/html; charset=UTF-8"); // output as HTML
如果是UTF-16编码,我会使用iconv()
将其转换为UTF-8,这几乎已成为网络的标准编码:
$theData = iconv("UTF-16", "UTF-8//TRANSLIT", $theData);
答案 1 :(得分:0)