Rumah >pembangunan bahagian belakang >masalah PHP >php swfupload中文乱码怎么解决

php swfupload中文乱码怎么解决

青灯夜游
青灯夜游asal
2021-05-21 16:45:222471semak imbas

方法:1、利用“fileName=new String(fileName.getBytes("UTF-8"),"GBK")”语句;2、利用“fileName=URLDecoder.decode(fileName,"UTF-8")”语句。

php swfupload中文乱码怎么解决

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

SWFUpload中文乱码问题,在网上搜的帖子,关于这个问题的解决方法有很多。

第一种:fileName= new String(fileName.getBytes("UTF-8"),"GBK");
用这种方式能解决大部分乱码,但如果文件名中有特殊字符和标点符号有时候会转不过来。

第二种:我使用的是这种办法,测试已经通过 

/**在设置时需要设置一下上传事件 
  *upload_start_handler : UploadStart, 
  *动态传参数,解决文件名中文乱码问题 
**/  
function uploadStart(file) {
	try {
		/* I don't want to do any file validation or anything,  I'll just update the UI and return true to indicate that the upload should start */
		var progress = new FileProgress(file, this.customSettings.progressTarget);
		
		//progress.setStatus("Uploading...");
		progress.setStatus("上传中...");
		progress.toggleCancel(true, this);
		this.setPostParams({ 
			  'fileName':encodeURIComponent(file.name) 
			  }); 
	}
	catch (ex) {
	}
	
	return true;
}

在action中使用 

fileName = URLDecoder.decode(fileName,"UTF-8");

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci php swfupload中文乱码怎么解决. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:PHP可以不用Apache运行吗Artikel seterusnya:php怎么删除指定html标签