změna kódování na výstupu

jik
Člen | 149
+
0
-

Zdravím,
mám celou aplikaci včetně databáze v utf-8. Teď se mi objevil požadavek, aby některé sestavy pro některé uživatele byly v cp-1250. Samotná změna http hlavičky nic neřeší – nette do šablon posílá data v utf-8 a v této podobě je předává apačovi. Je nějaká cesta, jak říci (asi latte), aby se celý výstup překódoval? (Na Microsoft office je prý složité nastavení pro import csv souborů…)

David Grudl
Nette Core | 8218
+
0
-

Zachytit celý výstup pomocí bufferu a překódovat pomocí mb_encode_numericentity($utf8, [0x80, 0x10FFFF, 0, 0xFFFF], 'UTF-8');

Gappa
Nette Blogger | 208
+
+2
-

jik napsal(a):

Na Microsoft office je prý složité nastavení pro import csv souborů…

Lehce OT – pro správné otevírání CSV v UTF-8 v Excelu by mělo stačit je ukládat s BOM:

Opening CSV UTF-8 files correctly in Excel
You can open a CSV file encoded with UTF-8 normally if it was saved with BOM (Byte Order Mark). Otherwise, you can open it through either of the following ways.