文件上传中的文件名乱码问题 文件重命名rename()乱码问题 php
在文件上传中如果文件名是中文的话就会出现乱码,当使用rename()函数重命名一个文件为中文时,也会出现乱码,这是字符编码造成的。
使用icov()函数可以避免这种情况出现。具体如下:
文件重命名:
$name="测试.txt“;
$name=iconv("utf-8","gb2312",$name);
$renameit=rename("ceshi.txt","$name");
if($rename){
echo "success";
}
else {
echo "failed";
}
?>
文件上传:
$file=$_FILE["file"];
$filename=$file["name"];
$filename=iconv("utf-8","gb2312",$filename);
$path="upload/$filename";
$moveit=move_uploaded_file("$file[tmp_name]","$path");
if($moveit){
echo "move success";
}
else{
echo "move failed";
}
?>