php上传中文文件乱码

当使用utf-8编码处理上传文件时,会出现乱码.

使用iconv函数重新编码,代码如下:

if(($_FILES["file"]["type"] == "image/gif") || $_FILES["file"]["type"] =="image/jpeg" || $_FILES["file"]["type"] == "image/pjpeg" && $_FILES["file"]["size"]<2000){//设置上传文件的格式和大小
if($_FILES["file"]["error"]>0){
echo "Error: ". $_FILES["file"]["error"]. "<br/>";
}else{
echo "Upload: ". $_FILES["file"]["name"]. "<br/>";
echo "Type: ". $_FILES["file"]["type"]. "<br/>";
echo "Size: ". ($_FILES["file"]["size"]/1024). "<br/>";
echo "Stored in:". $_FILES["file"]["tmp_name"]. "<br/>";
if(file_exists("D:/phpfileuploadtmp/".$_FILES["file"]["name"])){
echo $_FILES["file"]["name"]. "already exists";
}else{
$name =iconv("utf-8","gb2312",$_FILES["file"]["name"]);//使用iconv函数重新编码
move_uploaded_file($_FILES["file"]["tmp_name"],"D:/phpfileuploadtmp/" .$name);
echo "Stored in:". $_FILES["file"]["name"];
}
}
}else{
echo "Invalid file";
}

你可能感兴趣的:(PHP,php上传文件,php中文乱码)