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