ホームページ  >  記事  >  バックエンド開発  >  Cakephp の国際化と poEdit の使用

Cakephp の国際化と poEdit の使用

黄舟
黄舟オリジナル
2016-12-20 09:15:471591ブラウズ

Cakephp の非常に強力な i18n 関数は、ローカリゼーションと国際化を実現するために使用されます。言語構成ファイルを使用して、プログラムが変更に適応し、ローカライズできるようにします。これを実装するには、新しい locale/chi/LC_MESSAGES/default.po ファイルを作成し、言語オプションを「chi」に指定します。この記事では、このローカリゼーション プロセスを実装する方法について説明します。 もちろん、この記事に詩は必要ありませんが、詩を使用すると作業が効率化されます。

1. i18n と L10n について

実際、この 2 つを初めて見たときは混乱しましたが、Baidu で検索した結果、最終的な目標は n が何つでも良いという結論に達しました。プログラムのローカライゼーションを実装するということは、端的に言えば、多くの言語設定ファイルで構成されていると私は理解しています。 http://baike.baidu.com/view/372835.htm もご覧ください。ここには非常に詳細な手順が記載されています。

2. Cakephpでローカリゼーションを実装する方法

これまでのところ、2つの設定方法があります。

2.1 方法1

config/core.phpのconfigure::writeを使用して言語ファイルを指定します。
Configure::write('Config. language',"chi");

2.2 方法 2

公式説明: http://book.cakephp.org/view/162/Localizing-Your-Application
とても良さそうです複雑です、ああ言ってください。

App::import('Core', 'l10n'); classTestsController extendsAppController{ $name="Tests"(){ $this->L10n-; >get("chi"); ..... } }2.3 上記の設定を変更した後に行う必要があること:

もちろん、上記の変更を行った後は、対応する ctp ファイルも変更する必要があります。など。

すべて直接、次のように戻り値がない文字列を出力します:

__("english");

戻り値がある場合、文字列を間接的に出力します:

__("english",true );

中国語で表示するにはラベルを追加する必要があります。

__("english");echo $form->input('name',array('label'=>__('name',true)));

2.4 最も重要なステップ

このファイル locale/chi/LC_MESSAGES/default.po を編集するだけです。真ん中の「chi」は言語ファイルのフラグです。このファイルの形式も非常に単純で、

msgid " Chinese"

msgstr "中文"

を単純に繰り返すだけで十分です。

3. poedit を使用する

poedit を使用する必要はありませんが、作業がはるかに簡単になります。公式 Web サイトは次のとおりです: http://www.poedit.net/
その主な機能は、言語設定ファイルの編集をより便利かつ高速にすることです。以下に簡単なスクリーンショットと詩の使用手順を示します。

3.1 初回はインターフェース言語を選択する必要があります。転載する場合は出典を明記してください: Cakephpの国際化とpoEditの使い方

以上がCakephpの国際化とpoEditの使い方の内容です。関連コンテンツについては、PHP 中国語 Web サイト (www .php.cn) にご注意ください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。