2016-03-01 77 views
2

我正在使用Laravel和Dropzone.js。一切都很好,直到我用西里爾文的名字上傳文件。目錄中的文件名稱看起來像 - Приети РїРѕ специалности_окончателно-РЅРѕРІ_0這是我猜測的編碼。在php.ini我設置default_charset="UTF-8"internal_encoding = UTF-8input_encoding = UTF-8但問題仍未解決。會是什麼呢?使用西里爾文名稱上傳文件時出現的奇怪符號

+0

你檢查頭?你的服務器返回的Content-Type?你確定你回來是utf-8嗎? –

+0

你檢查過你的文件編碼嗎?它可能不是UTF-8。 – subzeta

+0

'Content-Type:text/html; charset = UTF-8'好吧,也許問題不在標題 – Alex

回答

0

看起來你需要http://php.net/manual/en/book.iconv.php 如果你擁有了它,你可以嘗試:

$fileName = iconv("cp1251", "utf-8", $_FILES["upload"]["name"]); 
// or 
// $fileName = iconv("ISO-8859-1", "utf-8", $_FILES["upload"]["name"]); 


$baseDir = '/some/dir/'; 

move_uploaded_file(
    $_FILES["upload"]["tmp_name"], 
    $baseDir.$fileName 
); 
+0

有錯誤的參數順序 –

+0

在我國深夜。我去睡覺了。將明天檢查它。感謝您的時間 – Alex

+0

嘿,不幸的是,這不適用於我...文件名仍然看起來很糟糕 – Alex

相關問題