PHP Manual
/
Datenverarbeitung

Versenden einer CSV-Datei

18. 12. 2022

Wenn Sie Binärdateien versenden, sollten Sie immer überlegen, welche HTTP-Header Sie wählen. Im Falle der Übermittlung einer CSV-Datei (nahezu ideales Format für einfache Texttabellen, die von Excel verarbeitet werden können) ist `Content-Type: application/csv` in der Kodierung `UTF-8` nützlich.

In einigen Versionen von Excel gibt es jedoch ein Problem mit der UTF-8-Kodierung. Um sicherzustellen, dass die richtige Kodierung erkannt wird, müssen wir das "UTF-8 BOM" einfügen, ein spezielles Zeichen "xEF\xBB\xBF", das dem Client mitteilt, dass es sich um UTF-8 handelt, da es in keiner anderen Kodierung existiert.

Senden Sie daher die Kopfzeilen wie folgt:

header('Inhalt-Typ: application/csv; charset=utf-8');
header('Inhalt-Disposition: attachment; filename=' . date('d-m-y') . '_file.csv');
header('Pragma: no-cache');
echo "\xEF\xBB\xBF";

Jan Barášek   Více o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Související články

1.
4.
Status:
All systems normal.
2024