ホームページ  >  記事  >  バックエンド開発  >  PHPプログラムの国際化の実装方法(gettextを利用)_PHPチュートリアル

PHPプログラムの国際化の実装方法(gettextを利用)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:25:011050ブラウズ

ステップ 1: 環境をセットアップする
1. まず、php_gettext.dll ファイルが php 拡張機能ディレクトリにあるかどうかを確認します。ない場合は、
1 つをダウンロードするか、他の場所からコピーして、 php 拡張子ディレクトリ。
2. php.ini を開き、「;extension=php_gettext.dll」を検索し、コメントを削除して Apache を再起動します。
ステップ 2: 原則の説明
非国際化プログラムにそのようなコードがある場合は、echo "Hello"; を実行し、国際化プログラムの場合は、
echo gettext("Hello"); を記述してから、英語を追加する必要があります。 「Hi」は設定ファイルの「Hello」に対応します。
現時点では、中国でのブラウジングでは画面に「Hello」が出力され、米国でのブラウジングでは画面に
「Hi」が出力されます。つまり、最終的に表示される内容は設定ファイルによって異なります。設定ファイルが見つからない場合、
はプログラムの内容を出力します。
ステップ 3: エンコードテスト
1. d:www の下に新しいファイル hi.php を作成します

コードをコピーします コードは次のとおりです。 ?php
$domain = 'test ';
bindtextdomain($domain, "locale/");//特定のドメインの MO ファイル パスを設定します
textdomain($domain);//gettext( ) 関数は mo ファイルを見つけます
echo gettext(" Hi!");//_() は gettext() 関数の略です
?>



修正したプログラムを実行すると、"Hi" だけが表示されます出力。しかし、私たちは中国人なので、「こんにちは」を知りません。
「こんにちは」しか知らないので、ファイルを設定する必要があります。構成ファイルは通常、ツールを使用して生成されます。
ダウンロードアドレス: http://nchc.dl.sourceforge.net/sourceforge/gnuwin32/gettext-0.14.4.exe
インストール後、任意のディレクトリで使用するには、「インストールパス/bin」を追加する必要があります環境変数でシステムに設定します。

ステップ 4: 設定ファイルの生成

1. ツールがインストールされており、任意のディレクトリで使用できることを前提としています。ここで、cmd を実行し、 パスを、hi.php が配置されているディレクトリである d:www に切り替える必要があります。
「xgettext -d hi hi.php --from-code=gb2312」と入力して実行すると、新しく生成された
hi.po ファイルが表示されます。 注: --from-code=gb2312 です。 utf-8 にすることもできます。
2. hi.po ファイルを開くと、次のように表示されます:



コードをコピーします。 コードは次のとおりです:
# 説明的なタイトル # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # このファイルは、PACKAGE パッケージと同じライセンスの下で配布されます。
# FIRST AUTHOR 、YEAR。
#
#、fuzzy
msgid ""
msgstr ""
"Project-Id-Version:パッケージ バージョンn"
"Report-Msgid -Bugs-To: n"
"POT-Creation-Date: 2009-01-19 17:47+0800n"
"PO-Revision-Date: YEAR-MO-DA HO:MI +ZONEn"
"最終翻訳者 : フルネーム n"
"言語チーム: LANGUAGE n"
"MIME バージョン: 1.0n"
"コンテンツ タイプ: text/plain; charset=CHARSETn "
"Content-Transfer-Encoding: 8bitn"
#: hi.php:6
msgid "Hi!"
msgstr ""


現在変更する必要がある箇所が 2 か所あります,
1: "Content-Type: text/ plain; charset=CHARSETn"
2: msgstr ""
1のCHARSETをgb2312に変更し、2をmsgstr "Hello"に変更します。
3. msgfmt -o hi.mo hi.po と入力して実行すると、hi.mo ファイルが生成されます。
次に、d:www の下に新しい localezh_CnLC_MESSAGES ディレクトリを作成し、ここに hi.mo をコピーします。
4. Apacheを再起動し、再度実行すると画面に「Hello」が出力されます。
その他:
utft-8 エンコーディングを使用する場合は、
bind_textdomain_codeset($domain,'UTF-8'); を使用する必要があります
同様に、hi.po の CHARSET を utf-8 に変更する必要があります。 hi.po を変更する必要があります。utf-8 形式で保存し、
hi.mo を再度生成するだけです。
概要:
私たちは皆、自分が書いたプログラムが一般の人や、有名な WordPress のように国際的にも使用できることを望んでいます
国際的にも使用されています。 gettext は依然として非常に優れており、シンプルで使いやすいです。



http://www.bkjia.com/PHPjc/324154.html
www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/324154.html技術記事ステップ 1: 環境 1 をセットアップします。まず、php 拡張ディレクトリにファイル php_gettext.dll があるかどうかを確認します。ない場合は、ファイルをダウンロードするか、他の場所からコピーする必要があります...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。