[技術]PHP 中文檔名 識別問題

原先在製作檔案上下傳的同時,


發現中文檔案上傳有問題,無法順利搬移TEMP資料夾,


後來在網路上找了iconv("UTF-8", "big5",$upload_file) 語法,


試圖將檔案名稱由UTF8轉成BIG5,


但我一直以為他是直接更改檔案名稱的編碼,


所以我很放心的在其他程式片段還是直接用$_FILES["myfile"]["name"],


結果套用在getimagesize還是不行,完全無法判斷,


只好一步一步找問題,上傳沒問題,那我直接把檔案放在SERVER,


在程式裡面寫絕對路徑,英數字好像沒有問題,可是中文就又不行,


結果才發現,iconv只是為了讓程式可以識別而已,


所以,只要有用到檔案名稱的地方,


都要透過這個語法iconv("UTF-8", "big5",$upload_file) 才能識別,


例如:getimagesize(iconv("UTF-8", "big5",$upload_file))


害我一直找問題,想說哪有這麼詭異的,


浪費我大半的青春~嗚~~~可惡的編碼。


Share on Google Plus

About fengstech

0 意見:

張貼留言