Tagged ‘クラス’

コンストラクタで多言語化を

PHPなどのシステムで多言語に対応する際は出力の度に言語で分岐して出力するより、言語ファイルを用意した方が効率的です。

言語ファイルと言えばプログラム業界では「.po」「.mo」といったファイルがよく見られます。(はてなの場合
これらの言語ファイルをPHPで使うには下記の流れの作業する事になります。

1. 翻訳元の「.pot」ファイルを作成
2. ファイルを元に翻訳元と翻訳後の書かれた「.po」ファイルを作成
3. 「.po」ファイルを「.mo」ファイルにバイナリ変換
4. GetTextというライブラリで翻訳させる。

大規模なシステムだと分業しやすいというメリットはありますが「TASK4BOX」みたいな規模の小さいシステムだと大袈裟なので自前で言語ファイルを作る事にした。
(さらに…)