У мене дуже проста річ, яка просто виводить деякі речі у форматі CSV, але це має бути UTF-8. Я відкриваю цей файл у TextEdit або TextMate або Dreamweaver, і він відображає UTF-8 символів належним чином, але якщо я відкрию його в Excel, він робить це безглуздо. Ось що я маю на чолі свого документа:
header("content-type:application/csv;charset=UTF-8");
header("Content-Disposition:attachment;filename=\"CHS.csv\"");
Здається, все це має бажаний ефект, за винятком того, що Excel (Mac, 2008) не хоче імпортувати його належним чином. У Excel для мене немає варіантів "відкриватись як UTF-8" чи нічого, тому ... я трохи роздратований.
Я не можу ніде знайти чіткого рішення цього питання, незважаючи на те, що багато людей мають ту саму проблему. Найбільше я бачу - включити BOM, але я не можу точно зрозуміти, як це зробити. Як ви бачите вище, я просто отримую echo
ці дані, я не пишу жодного файлу. Я можу це зробити, якщо мені потрібно, я просто не тому, що в цьому моменті це не здається необхідним. Будь-яка допомога?
Оновлення: Я намагався повторювати BOM, echo pack("CCC", 0xef, 0xbb, 0xbf);
який я щойно витягнув із сайту, який намагався виявити BOM. Але Excel просто додає цих трьох символів до першої комірки, коли вона імпортує, і все ще переплутує спеціальні символи.