php上傳文件名亂碼的解決辦法:首先在php文件的頭部加入代碼為“header("Content-type: text/html; charset=utf-8");”;然后定義一個變量;最后運行PHP頁面即可。
創(chuàng)新互聯(lián)公司專注于邳州網站建設服務及定制,我們擁有豐富的企業(yè)做網站經驗。 熱誠為您提供邳州營銷型網站建設,邳州網站制作、邳州網頁設計、邳州網站官網定制、成都小程序開發(fā)服務,打造邳州網絡公司原創(chuàng)品牌,更為您提供邳州網站排名全網營銷落地服務。
推薦:《PHP教程》
文件上傳是我們在處理表單提交時候最常用的功能之一,今天寫了一個小小的demo,如下:
先看結構:
html為表單提交的頁面,php為處理表單的文件,upload為上傳文件所放的位置
html:
文件上傳
php:
$file = $_FILES["file"]; if ($file["error"] > 0) { echo "錯誤:" . $file["error"]; } else { echo "文件名稱:" . $file["name"] . ""; echo "文件類型:" . $file["type"] . ""; echo "文件大?。? . ($file["size"] / 1024) . "K"; echo "文件臨時存儲的位置:" . $file["tmp_name"] . ""; //保存上傳的文件 if (file_exists("upload" . $file["name"])) { echo $file["name"] . "文件已經存在"; } else { //如果目錄不存在則將該文件上傳 move_uploaded_file($file['tmp_name'], "upload/" . $file["name"]); echo '文件上傳成功!'; } }
我上傳了個.txt的文件,如下:
執(zhí)行:
可以看到十分的順利,那看看結果吧 :
此時上傳的文件是我們想要的,但是卻出現(xiàn)了亂碼的情況,嗯,好,那就來解決吧,:
首先,在php文件的頭部加這么一段代碼:
header("Content-type: text/html; charset=utf-8");
然后定義一個變量:
$name = iconv('utf-8','gb2312',"upload/".$file["name"]);
好,那我們看看整個的PHP頁面:
header("Content-type: text/html; charset=utf-8"); $file = $_FILES["file"]; if($file["error"]>0){ echo "錯誤:".$file["error"]; }else{ $name = iconv('utf-8','gb2312',"upload/".$file["name"]); echo "文件名稱:".$file["name"].""; echo "文件類型:".$file["type"].""; echo "文件大?。?.($file["size"]/1024)."K"; echo "文件臨時存儲的位置:".$file["tmp_name"].""; //保存上傳的文件 if(file_exists("upload".$file["name"])){ echo $file["name"]."文件已經存在"; }else{ //如果目錄不存在則將該文件上傳 if(move_uploaded_file($file['tmp_name'],$name)){ // move_uploaded_file($file['tmp_name'],"upload/".$file["name"]); echo '文件上傳成功!'; echo '圖片信息:'; print_r($file); } }
運行:
完美。
分享文章:如何解決php上傳的文件名亂碼問題
文章來源:http://weahome.cn/article/cjhgip.html