多言語のWebサイトまたはアプリケーションを開発する場合、さまざまな言語のデフォルト値を設定する必要があることがよくあります。 PHPは、開発者がこの作業を行うのに役立つ多くの組み込み関数を提供し、 array_fill_keys関数は非常に実用的なツールです。この記事では、 array_fill_keys関数を使用して、多言語サポートに適したデフォルト値構造を構築する方法を紹介します。
array_fill_keys関数は、指定されたキーで配列を入力し、これらのキーに同じデフォルト値を与えるために使用されます。その構文は次のとおりです。
array_fill_keys(array $keys, mixed $value): array
$キーは、キー名を含む配列です。
$値は、各キーに割り当てるデフォルト値です。
たとえば、次のコードは3つのキーの配列を生成し、それぞれに「デフォルト」の値があります。
$keys = ['en', 'fr', 'de'];
$default_values = array_fill_keys($keys, 'default');
print_r($default_values);
出力:
Array
(
[en] => default
[fr] => default
[de] => default
)
実際の開発、特に多言語サポートシナリオでは、通常、異なる言語の異なるデフォルト値を設定する必要があります。 array_fill_keys関数を使用すると、各言語のキーの統一されたデフォルト値構造をすばやく設定できます。 Array_fill_keysを使用してデフォルトの翻訳された値構造を構築する方法を示す多言語サポートの例を以下に示します。
英語( EN )、フランス語( FR )、ドイツ語( DE )の3つの言語をサポートしているとします。最初にこれらの言語キーを含む配列を定義します。
$languages = ['en', 'fr', 'de'];
これで、 array_fill_keys関数を使用して、これらの言語のデフォルト値を設定できます。すべての言語のデフォルトの変換値を「利用できない」と仮定します。
$default_translations = array_fill_keys($languages, 'Not Available');
print_r($default_translations);
出力:
Array
(
[en] => Not Available
[fr] => Not Available
[de] => Not Available
)
翻訳されたコンテンツが既にあり、特定の言語で翻訳を更新したい場合は、対応する値を直接変更するだけです。たとえば、英語( EN )とフランス語( FR )に特定の翻訳を追加します。
$default_translations['en'] = 'Hello';
$default_translations['fr'] = 'Bonjour';
print_r($default_translations);
出力:
Array
(
[en] => Hello
[fr] => Bonjour
[de] => Not Available
)
一部の多言語アプリケーションでは、URLには言語固有の識別子も含まれている場合があります。たとえば、それぞれの言語バージョンのページを指す各言語のURLアドレスを作成する必要がある場合があります。 array_fill_keys関数を使用すると、各言語のデフォルトのURL構造を構築できます。
すべての言語のデフォルトのURLをhttps://www.m66.net/default-pageに設定する必要があるとします:
$default_urls = array_fill_keys($languages, 'https://www.m66.net/default-page');
print_r($default_urls);
出力:
Array
(
[en] => https://www.m66.net/default-page
[fr] => https://www.m66.net/default-page
[de] => https://www.m66.net/default-page
)
異なる言語のページの異なるURLアドレスを設定する場合は、対応する値を直接更新できます。たとえば、英語版に特定のURLを設定し、フランスとドイツのバージョンに異なるURLアドレスを設定します。
$default_urls['en'] = 'https://www.m66.net/en/home';
$default_urls['fr'] = 'https://www.m66.net/fr/accueil';
$default_urls['de'] = 'https://www.m66.net/de/startseite';
print_r($default_urls);
出力:
Array
(
[en] => https://www.m66.net/en/home
[fr] => https://www.m66.net/fr/accueil
[de] => https://www.m66.net/de/startseite
)
PHPのarray_fill_keys関数を使用すると、多言語アプリケーションのデフォルト値構造を簡単に構築できます。このアプローチは、デフォルト値をすばやく設定するのに役立つだけでなく、コードのシンプルさと保守性を保証します。この関数を介して、統一されたデフォルト値を各言語に割り当てるか、ニーズに応じて異なる言語の異なる値を設定できます。
この記事では、 array_fill_keysを使用して多言語アプリケーションのデフォルトの変換値とURLアドレスを設定する方法を示します。この関数を適切に使用することにより、多言語でサポートされているコンテンツと構造を効率的に管理できます。