国際化とローカリゼーションをサポートする PHP 関数ライブラリを作成するには、次の手順に従います。 関数ライブラリ ファイルを作成し、関数を定義します。 Gettext 国際化ライブラリを導入します。翻訳メソッドを作成します。ロケール ファイル (.po および .mo) を構成します。関数ライブラリ関数の翻訳メソッドを使用して、翻訳されたテキストを取得します。
まえがき
関数の構築ライブラリは、PHP でコードをモジュール化して再利用可能にする強力な方法です。国際化 (i18n) とローカリゼーション (l10n) をサポートするように設定すると、アプリケーションのアクセシビリティとグローバル スコープが向上します。この記事では、国際化とローカリゼーションをサポートする PHP 関数ライブラリを作成する方法を段階的に説明します。
ステップ 1: 関数ライブラリ ファイルを作成する
新しい PHP ファイルを作成し、my_functions.php
という名前を付けます。関数ライブラリのメインファイルです。
<?php // 在这里定义你的函数
ステップ 2: 関数を定義する
メイン ファイルの関数ライブラリに関数を定義します。すべての関数には明確なドキュメントと型ヒントが必要です。
<?php /** * 获取当前日期和时间。 * * @return string 当前日期和时间,格式为 YYYY-MM-DD HH:MM:SS */ function get_datetime() { return date('Y-m-d H:i:s'); }
ステップ 3: Gettext 国際化ライブラリを導入する
PHP で国際化を有効にするには、Gettext 拡張機能を導入する必要があります。これを my_functions.php
の先頭に追加します:
<?php use Gettext\GettextTranslator;
ステップ 4: 翻訳メソッドを作成する
次に、Get する翻訳メソッドを作成します。特定の言語でのテキストの翻訳。
<?php /** * 翻译文本。 * * @param string $text 要翻译的文本 * @param string $domain 可选的文本域 * @param string $locale 可选的语言环境 * * @return string 已翻译的文本 */ function translate($text, $domain = null, $locale = null) { // 创建 Gettext 翻译器对象 $translator = new GettextTranslator(); // 设置文本域(可选) if ($domain !== null) { $translator->setDomain($domain); } // 设置语言环境(可选) if ($locale !== null) { $translator->setLanguage($locale); } // 翻译文本 return $translator->gettext($text); }
ステップ 5: ロケール ファイルを構成する
さまざまなロケールをサポートするには、.po
および を作成する必要があります。 # 翻訳ファイル。
my_functions 関数ライブラリのロケール ファイルは、
locale ディレクトリに配置する必要があります。
locale/en/LC_MESSAGES/my_functions.po および
locale/es/ を作成できます。 LC_MESSAGES それぞれ /my_functions.po ファイル。
ステップ 6: 実践的なケース
翻訳されたウェルカム メッセージを取得するための簡単なライブラリ関数を作成しましょう:<?php /** * 获取翻译的欢迎信息。 * * @param string $name 可选的名称 * @param string $locale 可选的语言环境 * * @return string 已翻译的欢迎信息 */ function get_welcome_message($name = null, $locale = null) { // 获取欢迎信息文本 $text = '欢迎使用 PHP 函数库!'; // 翻译文本 $translated_text = translate($text, 'my_functions', $locale); // 如果提供了名称,则将其添加到欢迎信息中 if ($name !== null) { $translated_text .= sprintf(' %s!', $name); } return $translated_text; }
結論
次の手順に従うことで、国際化とローカリゼーションをサポートする PHP 関数のライブラリを作成できるため、アプリケーションのアクセシビリティとグローバル スコープが向上します。関数ライブラリは、複数の言語のユーザーが含まれるアプリケーションで再利用可能なコードを使用する必要がある場合に役立ちます。以上がPHP 関数ライブラリを作成し、国際化とローカリゼーションをサポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。