Generujete CSV, což je v podstatě prostý textový soubor. Neexistuje způsob, jak specifikovat informace o kódování v takovém druhu souborů. Většina textových editorů implementuje (lepší nebo horší) automatickou detekci kódování. Excel ne. Excel jednoduše převezme ANSI, když kliknete pravým tlačítkem na soubor CSV. (Abyste byli vyzváni ke kódování, musíte použít nabídku "Otevřít".)
Zbývá vám jediná možnost (kromě přepnutí na jiný výstupní formát) převod dat na ANSI, buď pomocí mb_convert_encoding() nebo pomocí iconv() . Ale teď máte další problém:ANSI není skutečné kódování, v podstatě to znamená „jakékoli kódování je nastaveno v moje Počítač se systémem Windows." Nejprve musíte zjistit typické kódování většiny vašich uživatelů. To většinou závisí na zemi. Například mnoho zemí západní Evropy používá Win-1252.