ublaboo/datagrid CSV export s azbukou

kajinek32
Člen | 35
+
0
-

Ahoj všem,
v ublaboo (contributte) datagridu mám v tabulce nějaké stringy v češtině, nějaké s azbukou. V db uloženo jako utf8mb4, se zobrazením problém není.

Problém nastane ve chvíli, kdy si chci vyexportovat data z gridu pomocí vestavěného CSV exportu. Pro CSV bych měl použít kódování windows-1250, jinak se mi v Excelu rozsypou headery a české stringy, ale pokud použiju windows-1250, kde azbuka není, řádek se stringy v azbuce se nevyexportuje (tj. mám menší počet řádků v CSV, než ve skutečnosti v gridu je)

$grid->addExportCsvFiltered('Csv export (filtrovaný)', 'export.csv','windows-1250')
	 ->setTitle('Csv export (filtrovaný)');

Napadlo mě napsat si vlastní Exporter a azbuku transliterovat, ale radši se ptám, jestli to datagrid neumí nějak implicitně.

Díky

Šaman
Člen | 2655
+
+3
-

To mi přijde jako spíš problém importu CSV souboru v Excelu, než exportu. Používat kódování windows-1250 v dnešní době je archaismus se spoustou vedlejších problémů.

kajinek32
Člen | 35
+
0
-

Šaman napsal(a):

To mi přijde jako spíš problém importu CSV souboru v Excelu, než exportu. Používat kódování windows-1250 v dnešní době je archaismus se spoustou vedlejších problémů.

Díky za odpověď, jasně, normálně bych windows-1250 nepotřeboval, ale měl jsem za to, že Excel mi jinak CSV s CZ diakritikou nenačte správně. Jde mi hlavně o defaultní instalaci Excelu, nemůžu uživatelům radit, že proto, aby si stáhli CSV export z gridu, potřebují něco přenastavit v Excelu.

Rozumím tomu tak, že ty u CSV exportů z Datagridu necháváš defaultní UTF-8 a v Excelu se ti stringy s diagritikou po otevření zobrazí správně?

kajinek32
Člen | 35
+
+3
-

Tak díky @Šaman za otevření očí, nakonec stačilo nastavit parametr $includeBom na true, a Excel otevírá i UTF-8 správně

$grid->addExportCsvFiltered('Csv export (filtrovaný)', 'export.csv','utf-8',";",true)
	 ->setTitle('Csv export (filtrovaný)');