【发布时间】:2021-05-13 00:50:09
【问题描述】:
我会很简短。我的 FTP 函数返回错误的文件名编码
$conn_id = ftp_connect("site.com");
ftp_login($conn_id, "login", "pass");
ftp_pasv($conn_id, true);
$buff = ftp_nlist($conn_id, "./");
print_r($buff);
-> // result
array() {
[0]=> "��.txt"
}
文件名采用 Windows-1251 编码。
我尝试通过 nodejs 连接到 FTP,但它也返回了一些令人毛骨悚然的东西 — òð.txt。
我的桌面客户端 (WinSCP) 可以正常工作。
PS:我尝试使用 utf8_encode - 但这也不适合我。
【问题讨论】:
-
如果添加 header('Content-Type: text/html; charset=windows-1251'); 会发生什么到你的脚本?
-
@jamie0726,好建议!它还以正确的编码返回结果。如果我需要传输具有特定编码的文件,这将是一个很好的解决方案。但是对我来说是需要自动检测每个文件的编码。
-
我有这个问题,如何解决?