カテゴリー
PHP

サイトのUTF-8化

このサイトはEthnaで作られているのですが、EthnaのスクリプトエンコーディングはEUC-JP。データの保存はSQLiteでおこなっているのですが、それもEUC-JP。このあたりのエンコードをちまちま変更するのは非常に面倒なのでFilterを使ってバッファリング。最終出力をEUC-JPからUTF-8に変換しました。

コードはこんな感じ。これをControllerに追加するだけ。


php
class Filter_Ob extends Ethna_Filter
{

    

/**
     *    実行前フィルタ
     *
     *    @access    public
     */
    
function preFilter()
    {
        
mb_http_output("UTF-8");
        
ob_start('mb_output_handler');
    }

    

/**
     *    実行後フィルタ
     *
     *    @access    public
     */
    
function postFilter()
    {
        
ob_end_flush();
    }
}
?>


簡単すぎる!

作成者: halt

PHPプログラマ。