Pri odosielaní binárnych súborov si vždy premyslite, aké hlavičky HTTP zvoliť. V prípade odosielania súboru CSV (takmer ideálny formát pre jednoduché textové tabuľky, ktoré je možné spracovať v programe Excel) je vhodné použiť `Content-Type: application/csv` v kódovaní `UTF-8`.
V niektorých verziách programu Excel je však problém s kódovaním UTF-8. Aby sme sa uistili, že je rozpoznané správne kódovanie, musíme vložiť UTF-8 BOM
, čo je špeciálny znak xEF\xBB\xBF
, ktorý klientovi hovorí, že ide o UTF-8, pretože v žiadnom inom kódovaní neexistuje.
Preto pošlite hlavičky takto:
header('Content-Type: application/csv; charset=utf-8');header('Content-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:
Články píše Jan Barášek © 2009-2024 | Kontakt | Mapa webu
Status | Aktualizováno: ... | sk