新しい質問を作成する代わりに更新された質問...
私が構築しているソーシャル ネットワーク サイトで、英語以外の代替言語をいくつか提供したいと思っています。言語の翻訳を行うのはこれが初めてなので、ご容赦ください。
私は研究しているので、私は耳を傾け、アイデアにオープンであり、すでにここにたくさんの質問があります.
1)
i18n とはどういう意味ですか? SO で言語翻訳を調べているときによく見かけます。
2)
ほとんどの人はgettextを使用するPHP には拡張機能またはサポートがある
と言っていますが、私はそれを研究しており、基本的な理解はしています
。サイトの機能を使用するようにサイトをコーディングすることを意味します。 _('hello world i'm in English for now')またはgettext('hello world i'm in English for now')は問題ありません。
しかし、その後、サーバーに gettext をインストールして動作させる必要があり、
それから特別なエディターを使用して特別なファイルを作成し、それらをコンパイルする必要があると思います。
面倒くさいように聞こえますが、これが最善の方法であることは理解していますが、誰もがそう言っているようです。
では、なぜこれが進むべき道なのか誰か教えてもらえますか?
3)
このアプローチのシンプルさがとても気に入っています。言語配列を構築し、以下の例のように関数で必要なフレーズを呼び出すだけです。その後、適切な言語配列を含むファイルを含めるだけです。
私が本当に知りたいのは、これは gettext を使用する場合と比較して、トラフィックが多く、かなり大きなサイトでパフォーマンスが劣る方法でしょうか? もしそうなら、その理由を説明していただけますか?
<?PHP
//Have seperate language files for each language I add, this would be english file
function lang($phrase){
static $lang = array(
'NO_PHOTO' => 'No photo\'s available',
'NEW_MEMBER' => 'This user is new'
);
return $lang[$phrase];
}
//Then in application where there is text from the site and not from users I would do something like this
echo lang('NO_PHOTO'); // No photo's available would show here
?>
*以下のbrianreavisの回答から使用されたいくつかのコード