Ob_end_flush için utf8_encode Uygulanması ()

2 Cevap php

Ben metin çıktısı üreten bir komut dosyası var. Bu komut latin1_general_ci olarak kodlanmış bir MySQL veritabanı içeriği kapmak. Iso-8859-1 olarak işaretlenmiş bir HTML sayfası bu senaryoya dahil çalışıyor.

Nasıl bu senaryonun çıkış yakalamak ve utf-8 kodlanmış bir HTML sayfası içinde yer alıyor musunuz?

I) (ob_start kullanarak senaryonun çıkış yakalamak () ve ardından ob_end_flush ile dışarı tükürmek için çalıştılar. Fikir ob_end_flush () gelen çıkışın karakter kümesi dönüştürme oldu.

Ben aşağıdaki denedim, ama iso-8859-1 içeriği (hala benim tarayıcıda komik karakterler bakınız) dönüştürme için görünmüyor:

utf8_encode(ob_end_flush());

2 Cevap

ob_end_flush istemciye veri gönderen ve bir boolean döndürür. Sen ob_get_flush kullanmalısınız.

http://ar2.php.net/ob_get_flush

Converion yapmak için, aynı zamanda SET NAMES utf8 DB ile bağlantı açtıktan sonra bu sorguyu çalıştırabilirsiniz. Bu UTF-8 dönüştürme latin-1 yapmak MySQL talimat ve artık utf8_encode gerekmez.