Wie kann ich UTF-8-Dateinamen in PHP unter Windows verarbeiten?

Linda Hamilton
Freigeben: 2024-11-03 14:18:31
Original
157 Leute haben es durchsucht

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

PHP – Umgang mit UTF-8-Dateinamen unter Windows

Problembeschreibung

Das Hochladen von Dateien mit UTF-8-codierten Dateinamen führt unter Windows zu verzerrten Zeichen.

Vorgeschlagene Lösung

Der ursprüngliche Vorschlag zur Lösung dieses Problems beinhaltete die Verwendung der iconv()-Funktion, um den Dateinamen in eine Codepage zu konvertieren, die mit dem Windows-System kompatibel ist, wie z. B. CP1258. Allerdings weist dieser Ansatz Einschränkungen auf.

Aktualisierte Lösung

In Wirklichkeit können PHP-Dateisystemfunktionen nur Zeichen verarbeiten, die sich innerhalb der aktiven Codepage des Systems befinden. Daher ergeben sich zwei mögliche Lösungen:

Option 1:

  • Dateinamenzeichen auf die Codepage des Systems beschränken (z. B. CP437 in Ihrem Fall)
  • Diese Option schränkt die Verwendung vietnamesischer Zeichen ein.

Option 2:

  • Ändern Sie die Codepage des Systems auf Vietnamesisch (z. B. CP1258). )
  • Konvertieren Sie den Dateinamen in die neue Codepage (z. B. $fn2 = iconv("UTF-8","cp1258", $base_dir.$fn);)
  • Diese Option auch beschränkt Dateinamenzeichen auf die vietnamesische Codepage 1258.

Nachteile beider Optionen:

  • Option 1: Unfähigkeit Bestimmte vietnamesische Zeichen verwenden
  • Option 2: Anforderung zum Ändern der Systemcodepage und Einschränkungen für Dateinamenzeichen

Zusätzliche Informationen zum Ändern der Systemcodepage

So ändern Sie die Codepage des Systems:

  1. Navigieren Sie zu Systemsteuerung > Region
  2. Wählen Sie die Registerkarte „Verwaltung“ aus
  3. Klicken Sie unter „Sprache für Nicht-Unicode-Programme“ auf die Schaltfläche „Systemgebietsschema ändern“
  4. Wählen Sie „Vietnamesisch (Vietnam)“ aus dem Dropdown-Menü

Das obige ist der detaillierte Inhalt vonWie kann ich UTF-8-Dateinamen in PHP unter Windows verarbeiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!