私はcodeigniterの上に構築されたWebアプリケーションを持っています。主に英語で書かれていますが、今は他の言語のサポートも追加したいと思います。私はCodeIgniterの言語ライブラリに精通していExcelのスプレッドシートを使用したCodeigniter PHPアプリケーションの国際化
: http://codeigniter.com/user_guide/libraries/language.html
かなり良い解決策のように思える、しかし、私は1つの問題があります。各言語について、$ lang [KEY] = VALUE文の別のファイルを作成する必要があります。つまり、私のスペイン語を話す友人に私のアプリケーションの翻訳を手伝ってもらうには、彼らが作業している相手の隣に別のファイルを開いておく必要があります。あなたの位置を追跡するのはかなり簡単です。
私は、スプレッドシート(CSV)のアプローチを使用して、これを翻訳するために、このような絵何か希望:
を、私はこれを達成するについて行くかもしれないいくつかの方法は何ですか?私は、アプリケーションのための 'マスター'スプレッドシートを作成し、csvファイルを解析し、アプリケーションに挿入する適切な言語ファイルを作成するためのコマンドラインPHPプログラムを作成することを考えました。より良い方法がありますか?
...データベースの使用はどうですか? –
私はそれに反対していませんが、データベースを使用することは、アプリケーションサーバー上のローカルファイルからの読み込みよりも少し高価でしょうか? (データベース要求の往復時間) –
dbを使用すると、言語のすべての翻訳を一度にロードするか、キャッシュを使用するか、(列識別子を使用して)1ページに必要な部分だけをロードできます。 CSVのようなファイルを使用すると、単一の文字列が必要になるたびにデータを抽出するために開く/読み込み/解析/処理する必要があります。 DBは最適化することができ、それはそのように動作するように意図されています。あなたが疑問に残っているなら、いつでも両方のアプローチとベンチマークを試みることができます –