php上傳中文文件無法上傳的解決辦法:1、通過“iconv("GBK", "UTF-8", $content);”方法將中文字符編碼轉換一下;2、將文件重命名即可。
php上傳中文文件無法上傳問題怎么辦
PHP 上傳文件名中帶中文的文件失敗問題
問題產生的原因是:中文亂碼問題
php文件為utf-8編碼方式。
解決方案1:將中文字符編碼轉換一下。
函數原型:string iconv ( string in_charset, string out_charset, string str )
使用例子:$content = iconv("GBK", "UTF-8", $content);
代碼如下:
$name=iconv("UTF-8","gb2312", $name); move_uploaded_file($tmpname, "upload/".$name); $name=iconv("gb2312","UTF-8", $name);
解決方案2:文件重命名
//保存在服務器的名字則是時間戳,加文件后綴名 $saveName=time().$fileExtensions; //取得服務器的目錄的絕對路徑。 $basepath=str_replace('\\','/',realpath(dirname(__FILE__).'/'))."/"; //然后則保存這個上傳文件 move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$saveName);