Heim  >  Artikel  >  Backend-Entwicklung  >  So lösen Sie das Problem verstümmelter XLS-Dateien, die von PHP exportiert werden

So lösen Sie das Problem verstümmelter XLS-Dateien, die von PHP exportiert werden

藏色散人
藏色散人Original
2020-08-25 11:26:111876Durchsuche

Lösung für die von PHP exportierten verstümmelten XLS: 1. Führen Sie die Methode „iconv('utf-8“, „gb2312“, $filename)“ aus, um „$filename“ zu transkodieren; 2. Definieren Sie den Excel-Zeichensatz als „charset = UTF-8" 1. Definition Dateiname

2. Füllen von Excel-Daten

So lösen Sie das Problem verstümmelter XLS-Dateien, die von PHP exportiert werdenWährend dieser beiden Prozesse können einige verstümmelte Zeichen auftreten:

Lösung für verstümmelte Dateinamen:

Ursache für verstümmelte Zeichen: Chinesisch Wird von der Kundenversion der Windows-Systemplattform verwendet, und die Dateinamenkodierung der Windows-Plattform ist gb2312 (gbk), und unsere Webseitenkodierung verwendet im Allgemeinen die utf-8-Kodierung (Internationalisierung), um dem bestehenden Trend zu folgen Wenn wir Folgendes tun: header("Content-Disposition: inline; filename=/"" . $filename . ".xls/""), werden verstümmelte Zeichen angezeigt. Wenn Ihre Webseite gb2312 codiert ist, ist dies nicht erforderlich Betrachten Sie das Codierungsproblem. Lösung: $filename transkodieren, ausführen: iconv('utf-8", "gb2312", $filename). Wenn Ihre Umgebung die Funktion iconv nicht unterstützt, können Sie eine andere Funktion verwenden, sofern die Codierung von $filename in gbk konvertiert werden kann.

Aber dieses Problem wird erneut auftreten und Linux-Benutzer werden verstümmelte Dateinamen haben (da die Dateinamen der Linux-Plattform nicht gbk-codiert sind).

Angesichts dieses Problems habe ich zwei Methoden gewählt: Erstens: Geben Sie einige Kunden auf, schließlich machen Windows-Systembenutzer die Mehrheit aus. Zweitens: Wie bei Google Mail werden zwei Download-Adressen bereitgestellt. Ein Dateiname ist GBK-codiert und ein Dateiname ist UTF-8-codiert.

Lösung für verstümmelte Daten in Excel:

Ursache für verstümmelten Code: Die Webseitenkodierung stimmt nicht mit der Excel-Kodierung überein. Lösung: Da die Codierung inkonsistent ist, ist es in Ordnung, sie konsistent zu machen. Definieren Sie den Zeichensatz von Excel: header("Content-Type: application/vnd.ms-excel; charset=UTF-8"). Stellen Sie sicher, dass er mit der Codierung Ihrer Webseite übereinstimmt, um Excel zu lösen Daten sind verstümmelt. Das ist relativ einfach!

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem verstümmelter XLS-Dateien, die von PHP exportiert werden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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