PHP文件上傳常見問題

在做一個PHP文件上傳系統的時候,使用move_uploaded_file進行文件上傳,提示下面兩個warning,不能成功上傳文件
一個是cannot open steam
一個是cannot move
一開始查閱資料,網上千篇一律說是權限問題,因此加上了目錄權限,但是並沒有卵用
換一個思路,把相對路徑換成絕對路徑,也沒用
最後發現是編碼問題

因爲php字符編碼和windows不同,簡體中文版的windows對文件名的命名一般使用gbk或gb2312編碼。而php中的非ASCII字符串變量的值大多使用utf8編碼(當然,這個默認值可以修改。。)。你需要將namegbkwindows使mbconvertencodingphputf8moveuploadedfile( tmp_name,'upload/' .name);moveuploadedfile( tmp_name,'upload/' .mb_convert_encoding($name,”gbk”, “utf-8”));

最後問題解決啦

發佈了76 篇原創文章 · 獲贊 36 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章