php上传的文件名乱码
发布时间: 2023-02-27 18:56:33
乱码和外国无关。
服务器的设置和程序本身,两方面都可能引起乱码。
GB2312
的编码,如果设置对了,也不会出乱码。
因此,关键看你怎么设置。
❷ PHP文件上传中文乱码问题,以下为代码
说的是文件名乱码么?
凡中文这样转化一下
iconv("GB2312","UTF-8",$_FILES["file"]["name"] );
❸ PHP上传出现乱码 请问以下这段上传代码我上传中文时会出现乱码,请问怎么修改啊
修改这一行代码:
//移动文件
// $file_path = $save_path . $file_name;
$file_path = $save_path . microtime( TRUE ) . '.' . $file_ext;
原因:
windows和该代码的文件名编码不一致,windows是GB编码,你的代码是UTF编码,所以直接用文件原始文件名会导致乱码。
只要是文件上传的地方统统要修改文件名,客户端的文件名可以写在数据库里面。
❹ php上传图片名称乱码
中文文件名需要转码成gbk:
functionsaveFile($fileArr,$post_get){
$realFileName=$fileArr["name"];//上传文件的文件名
$ext_file_name=strrchr($realFileName,'.')?strrchr($realFileName,'.'):"";//获取扩展名
$type=$fileArr["type"];//上传文件的类型
$size=$fileArr["size"];//上传文件的大小
$tmp_name=$fileArr["tmp_name"];//上传文件的临时存放路径
$web_root=$_SERVER['DOCUMENT_ROOT'];
//$guidFilePath=$web_root.stripslashes($post_get['tagPath']).'/'.creat_guid(0).$ext_file_name;
$FileUrl=stripslashes($post_get['tagPath']).'/'.$realFileName.$ext_file_name;
$FilePath=$web_root.$guidFileUrl;
$FilePathBK=iconv("utf-8","gbk",$dFilePath);
$md5=strtoupper(md5_file($tmp_name));
try{
if(move_uploaded_file($tmp_name,$FilePathBK)){
returnarray("success"=>true,'msg'=>"","realFileName"=>$realFileName,"guidFilePath"=>$guidFilePath,'md5'=>$md5,"fileSize"=>$size);
}else{
returnarray("success"=>true,'msg'=>$realFileName.'isnotavaliploadfile!',"realFileName"=>$realFileName,"guidFilePath"=>$guidFilePath,"fileSize"=>$size);
}
}catch(Exception$e){
returnarray("success"=>false,'msg'=>$e->getMessage(),"realFileName"=>$realFileName,"guidFilePath"=>$guidFilePath,"fileSize"=>$size);
}
}
❺ PHP上传文件名乱码,win环境。
if(move_uploaded_file($pic['tmp_name'], $upload_dir.$pic['name']))
改为
if(move_uploaded_file($pic['tmp_name'], iconv("UTF-8","GBK",$upload_dir.$pic['name'])))
热点内容