しょぼしょぼプログラマ雑記

自分のための備忘録。 開発記録など掲載してます。 質問・ご意見・ご感想等はTwitter ( https://twitter.com/yun_hokuto ) までお気軽にどうぞ。

CakePHP3(RC2)で多言語対応(i18n)

CakePHP3のRCで多言語対応させる方法が変更されているみたいなので記述を

config/bootstrap.phpにて下記のように記述変更すれば全体への適応ができます

<?php

ini_set('intl.default_locale', 'en_US');

また、各画面からの変更はControllerで下記のように記述すればいいようです

<?php

use Cake\I18n\I18n;

public function index()
{
    I18n::locale('en_US');

ロケールファイル(言語ファイル)の場所は下記の通り

src/Locale/[言語コード]/default.po

コチラの記述方法の変更は見られませんでした

これでCookieやログイン情報にユーザーの言語コードを保存すれば対応した言語でサイトを表示できますね

一応、公式サイト(英語)のURLも記載しておきます

Internationalization & Localization — CakePHP Cookbook 3.x documentation