PHP文件上传并解决中文文件名乱码问题

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

if(isset($_FILES['file'])){

$upload='upload/'.$_FILES['file']['name'];

if(is_uploaded_file($_FILES['file']['tmp_name'])){

//iconv函数解决上传文件中文名乱码的问题,但是不提倡文件名是中文的,特别是unix/linux环境下

​//如果是ubuntu要从gb2312转成utf-8(即调转)

if(!move_uploaded_file($_FILES['file']['tmp_name'],iconv('UTF-8','gb2312',$upload))){

echo'failed';

}else{

echo'success';

}

}

else{

echo'failed';

}

}

?>

关于iconv函数的应用:string iconv ( string in_charset, string out_charset, string str )

in_charset:传入的文件的格式

out_charset:输出的文件的格式

str:文件路径

来自为知笔记(Wiz)