JUGEM で吐いてる RSS の description が Unicode っぽい。
RSS を取得して DB に保存するときに UTF-8 にエンコードしておきたい。
html_entity_decode は使えるか?
下記のページを呼んでいると html_entity_decode を使って運がよければエンコードできると書かれてある。
現役 PHP プログラマーのための Unicode
html_entity_decode($q, ENT_NOQUOTES, 'UTF-8')
下記のエラーがでた。
cannot yet handle MBCS in html_entity_decode
より完全にとか書かれていたので下記を試してみたけど結果は同じ。
mb_language('uni'); mb_internal_encoding('UTF-8'); html_entity_decode($q, ENT_NOQUOTES, 'UTF-8').
unicode_encode()
下記の記事で unicode_encode() というのを知るが PHP6 から実装されるらしい。あいにく使いたい環境は、PHP5。
PHPでユニコードエスケープ(unicode_encode, unicode_decode代替) – はて日記
しかし、同記事に PHP4、PHP5 でも実装できるようにサンプルコードが書かれていたので、それを修正して UTF-8 に変換した。
修正方法がざっとしていたので、もう少し手直ししておく必要がありそう。
トラックバック一覧
この記事にはトラックバックがついていません。