[Codeigniter] languageファイルをjsで使い回す方法

twitterの問い合わせに140文字で答えようと思うと、ちょっと面倒だったので、補足として書いた記事です。
languageファイルをjsで使いますのってどうなの、は置いといて、もっといいやり方あるだろー、がありましたら、twitterでリプライ下さいー。ちなみに、これだとfooterが肥大化しちゃうので、言語変換APIをつくってajaxで叩いちゃう方がいいのかも。反応速度と開発工数次第かとは思いますが。

1.言語ファイルの呼び出し

ここでは、languageフォルダに japanese/hoge_lang.php を置いてるものとします。コントローラーで、言語ファイルを呼び出して、json化。

$this->lang->load('hoge.php', 'japanese');
$error = json_encode($this->lang);

2.viewファイルで、jsonを読み込み

$error(言語ファイル)を、viewファイルに受け渡して、fotterでjavascriptに引き渡します。ポイントは、グローバル変数に渡しちゃうことです。

<script>
  var error = <?php echo $error; ?>;
</script>

3.好きにグローバル変数からエラーメッセージを読み込んで下さい

 
Codeigniter、ほぼ素のphpのように取り回しできるので、さくっと実装するのは簡単でいいですよね。
それではまた。

お問い合わせ