Heim >Backend-Entwicklung >PHP-Problem >Was tun, wenn PHP-Exporte Excel mit verstümmelten Zeichen enthalten?

Was tun, wenn PHP-Exporte Excel mit verstümmelten Zeichen enthalten?

coldplay.xixi
coldplay.xixiOriginal
2020-11-02 13:47:344049Durchsuche

Lösung für verstümmeltes Excel, das von PHP exportiert wurde: 1. Transkodieren Sie [$filename] und führen Sie die Anweisung [iconv('utf-8", "gb2312", $filename)] aus; 2. Definieren Sie den Excel-Zeichensatz und die Webseitenkodierung Konsistent mit [charset=UTF-8].

Was tun, wenn PHP-Exporte Excel mit verstümmelten Zeichen enthalten?

Lösung für den verstümmelten Excel-Export durch PHP:

1. Lösung des verstümmelten Excel-Dateinamens, der von PHP exportiert wurde:

Ursache des verstümmelten Codes: verwendet vom Kunden Die chinesische Version der Windows-Systemplattform und die Dateinamenkodierung der Windows-Plattform sind gb2312 (gbk), und unsere Webseitenkodierung verwendet im Allgemeinen die utf-8-Kodierung (Internationalisierung), um dem bestehenden Trend zu folgen Wenn wir dieses Mal Folgendes tun: header("Content-Disposition: inline; filename=/"" . $filename . ".xls/""), werden verstümmelte Zeichen angezeigt. Wenn Ihre Webseitenkodierung gb2312 ist, besteht keine Notwendigkeit um das Kodierungsproblem zu berücksichtigen.

Lösung: Um den Dateinamen zu transkodieren, führen Sie Folgendes aus: 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.

2. Lösen Sie das Problem von verstümmeltem Excel beim Exportieren von Daten aus Excel über PHP:

Der Grund, warum PHP Excel verstümmelt: 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 das Excel-Problem zu lösen. Die internen Daten sind verstümmelt. Das ist relativ einfach!

Empfehlungen für entsprechende Videos: PHP-Programmierung vom Einstieg bis zum Master

Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP-Exporte Excel mit verstümmelten Zeichen enthalten?. 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