如何在 Windows 上的 PHP 中處理 UTF-8 檔案名稱?

Linda Hamilton
發布: 2024-11-03 14:18:31
原創
157 人瀏覽過

How Can I Handle UTF-8 Filenames in PHP on Windows?

PHP - 在Windows 上處理UTF-8 檔案名稱

問題陳述

上傳具有UTF-8 編碼檔案名稱的檔案會導致Windows上的字元扭曲。

建議的解決方案

解決此問題的原始建議涉及使用 iconv() 函數將檔案名稱轉換為與 Windows 系統相容的程式碼頁,例如 CP1258。但是,這種方法有其限制。

更新的解決方案

實際上,PHP 檔案系統函數只能處理系統活動程式碼頁內的字元。因此,出現了兩種可能的解決方案:

選項1:

  • 將檔案名字符號限制為系統的代碼頁(例如,您的代碼頁(例如,您的情況為CP437)
  • 此選項限制越南字的使用。

選項2:

  • 將系統的代碼頁更改為越南語(例如CP1258 )
  • 將檔案名稱轉換為新的代碼頁(例如,$fn2 = iconv("UTF-8","cp1258", $base_dir.$fn);)
  • 此選項也將檔案名稱符號限制為越南語代碼頁1258。

兩個選項的缺點:

  • 選項1: 無法使用某些越南語字元
  • 選項2:更改系統代碼頁的要求和文件名字符的限制

有關更改系統代碼頁的其他資訊

要更改系統的代碼頁:

  1. 導覽至控制面板>地區
  2. 選擇「管理」標籤
  3. 在「非Unicode 程式的語言」下,按一下「變更系統區域設定」按鈕
  4. 選擇「越南語(越南)」從下拉式選單

以上是如何在 Windows 上的 PHP 中處理 UTF-8 檔案名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!