SORU
3 Aralık 2010, Cuma


Nasıl bir Excel PHP UTF-8 CSV düzgün okuyacak çıkış yapabilir miyim?

Sadece CSV formatında bir şeyler verir, bu çok basit bir şey var, ama UTF-8 olmalı. TextEdit veya Metin veya Dreamweaver bu dosyayı açıp UTF-8 karakterleri görüntüler doğru, ama ben bunu açık olarak Excel yerine böyle saçma íÄ tür yapıyor. Benim belgenin başında var:

header("content-type:application/csv;charset=UTF-8");
header("Content-Disposition:attachment;filename=\"CHS.csv\"");

Bu Excel (Mac, 2008) almak istemiyor dışında istenen etkiyi düzgün görünüyor. Bana "UTF-8" ya da bir şey, bu yüzden biraz rahatsız oluyorum. olarak açmak için Excel seçenekleri yok

Bu herhangi bir net çözümler her yerde, bir sürü insan aynı sorunu olmasına rağmen bulmak için görünmüyor olabilir. En çok gördüğüm şey BOM vardır, ama tam olarak nasıl bunu çözemiyorum. Sadece echoıng, bu verileri ben yukarıda gördüğünüz gibi, herhangi bir dosya yazmıyorum. Eğer gerekirse, bu noktada bir ihtiyaç gibi görünmüyor, çünkü orada değilim. Bunu yapabilirim. Herhangi bir yardım?

Güncelleme: ben sadece BOM tespit etmeye çalışıyordu bir siteden çektim echo pack("CCC", 0xef, 0xbb, 0xbf); BOM yankılanan çalıştım. Ama Excel sadece aldığında ilk hücre için bu üç karakter ekler, ve hala özel karakterleri bozulur.

CEVAP
14 Aralık 2010, Salı


yeni bulduğum (ya da benzer) aynı sorun var, çünkü senin sorunun.

Eğer çıkış için bir BOM eklersem benim durumumda, çalışır:

header('Content-Encoding: UTF-8');
header('Content-type: text/csv; charset=UTF-8');
header('Content-Disposition: attachment; filename=Customers_Export.csv');
echo "\xEF\xBB\xBF"; // UTF-8 BOM

Bu çok çirkin kesmek, ama en azından Excel 2007 Windows için bende işe yaradı sanırım. Emin Mac üzerinde çalışacak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ehowhome

    ehowhome

    22 NİSAN 2009
  • Attempts at least

    Attempts at

    1 Ocak 2007
  • Tracy Hairston

    Tracy Hairst

    22 Mayıs 2009