0
我在使用西里尔文字符集检索和处理俄文数据时遇到问题。PHP中的西里尔文字符集问题(黑钻石和问号)
我使用下面的代码从FTP服务器获取文本文件中的数据,并显示每个带有问号的黑色菱形字符。
如果我通过浏览器访问FTP地址直接查看它,它会正确显示。
我试图改变这一行: 到 和 而我得到不同的结果,但没有表现出同样的浏览器直接访问文件时。
我不知道如何让代码显示一样时,我认为它直接
这将是我如何看待直接的文本文件,该文件显示正确的例子浏览器:ftp://username:[email protected]/test.txt
这是我正在使用的代码,显示黑色菱形带有问号(其他不正确的字符,取决于上述字符集)。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<?php
$username = "username";
$password = "password";
$server = "ftp://ftp.mysite.com"
$remoteFile = "test.txt";
$conn = ftp_connect($server);
if (@ftp_login($conn, $username, $password)) {
echo "";
}
else {
echo "";
}
ob_start();
ftp_get($conn, 'php://output', $remoteFile, FTP_ASCII);
$data = ob_get_contents();
ob_end_clean();
ftp_close($conn);
echo $data;
?>
</html>
尝试使用$ data上的utf8_encode – vishwakarma09
谢谢,虽然这确实阻止了“黑钻石/问题ma rk'问题,它仍然无法正确显示。我再次对downvote感到失望(没有解释为什么),因为我只是在这里发帖时,我一直无法自己解决它。 – omega1
哦,我注意到,你正在使用传输模式为FTP到ASCII,尝试切换到二进制模式与FTP_BINARY国旗代替FTP_ASCII标志 – vishwakarma09