PHP 8.4.1 Released!

ResourceBundle::create

resourcebundle_create

ResourceBundle::__construct

(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL intl >= 2.0.0)

ResourceBundle::create -- resourcebundle_create -- ResourceBundle::__constructリソースバンドルを作成する

説明

オブジェクト指向型 (メソッド)

public static ResourceBundle::create(?string $locale, ?string $bundle, bool $fallback = true): ?ResourceBundle

手続き型

resourcebundle_create(?string $locale, ?string $bundle, bool $fallback = true): ?ResourceBundle

オブジェクト指向型 (コンストラクタ):

public ResourceBundle::__construct(?string $locale, ?string $bundle, bool $fallback = true)

リソースバンドルを作成します。

パラメータ

locale

リソースバンドルを読み込むロケール (en_CA などのロケール名)。

bundle

データが格納されているディレクトリ、あるいは .dat ファイル名。

fallback

ロケールを完全一致とするか、あるいは代替として親ロケールを使うことを許可するか。

戻り値

ResourceBundle オブジェクト、あるいはエラー時に null を返します。

例1 resourcebundle_create() の例

<?php
$r
= resourcebundle_create( 'es', "/usr/share/data/myapp");
echo
$r['teststring'];
?>

例2 ResourceBundle::create() の例

<?php
$r
= ResourceBundle::create( 'es', "/usr/share/data/myapp");
echo
$r['teststring'];
?>

上の例の出力は以下となります。

¡Hola, mundo!

参考

add a note

User Contributed Notes 3 notes

up
4
mail at dasprids dot de
10 years ago
Since this took me over 4 hours to find out after digging through the libicu source code, I thought it'd be a good idea to post it here. do access othere thata than the default "locale" data (which you get by passing NULL as $bundlename), you can use the following somewhat magic strings to get other resource bundles:

ICUDATA-curr
ICUDATA-lang
ICUDATA-region
ICUDATA-zone
up
3
Anonymous
5 years ago
Depending on the data you want to load, you might need to pass 'root' or something different as $locale.
Here is a list of examples and the corresponding link to the file that gets loaded:

ResourceBundle::create('de', 'ICUDATA-brkitr', false)
https://github.com/unicode-org/icu/blob/release-65-1/icu4c/source/data/brkitr/de.txt

ResourceBundle::create('root', 'ICUDATA-curr', false)
https://github.com/unicode-org/icu/blob/release-65-1/icu4c/source/data/curr/root.txt

ResourceBundle::create('root', 'ICUDATA-translit', false)
https://github.com/unicode-org/icu/blob/release-65-1/icu4c/source/data/translit/root.txt

ResourceBundle::create('likelySubtags', 'ICUDATA', false)
https://github.com/unicode-org/icu/blob/release-65-1/icu4c/source/data/misc/likelySubtags.txt
up
0
mail at dasprids dot de
10 years ago
To get the resource bundle provided by libicu, you can pass "null" as $bundlename.
To Top