【問題描述】
PHP下,在上傳文件時,如果文件名里含有中文字符,且php里調用了move_uploaded_file()函數的話,則點擊畫面上的“上傳”按鈕后會報錯,無法正確上傳文件。
【解決辦法】
在php里調用move_uploaded_file()函數前添加下列代碼即可解決問題:
$upload_path=$_SERVER['DOCUMENT_ROOT']."/upload/";
$dest_file=$upload_path.basename($_FILES['myfile']['name']);
if (function_exists("iconv"))
{
$dest_file=iconv("UTF-8","GB2312",$dest_file);
}
這里的$dest_file變量保存了文件上傳后從臨時目錄移動到目的地的目標文件名。