gpt4 book ai didi

Php 在 linux 服务器上以错误的编码保存上传的文件

转载 作者:搜寻专家 更新时间:2023-10-31 21:54:12 25 4
gpt4 key购买 nike

我有一个用于保存 tmp 文件的经典 php 脚本:

$uploads_dir = "scans";
var_dump( $_FILES );
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
$name = $_FILES["pictures"]["name"][$key];

rename($tmp_name, urldecode("/var/www/html/$uploads_dir/$name") );
}
}
echo urldecode("/var/www/html/$uploads_dir/$name");

但是,文件“фавикон.png”被保存为“фавикон.png”。请帮我弄清楚如何处理编码。

谢谢

编辑:

让它与 iconv 一起工作功能。然而,由于一些奇怪的原因,它必须被编码成 windows 格式。

结果代码:

if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
$name = $_FILES["pictures"]["name"][$key];
$name =iconv('UTF-8','windows-1251', $name);
copy($tmp_name, "/var/www/html/$uploads_dir/$name");
}

最佳答案

您可能需要以下 setlocale(LC_ALL, 'ru_RU.utf8')

关于Php 在 linux 服务器上以错误的编码保存上传的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35333325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com