PHP Conference Nagoya 2025

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::__constructCreate a resource bundle

Beschreibung

Objektorientierter Stil (method)

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

Prozeduraler Stil

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

Objektorientierter Stil (constructor):

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

Creates a resource bundle.

Parameter-Liste

locale

Locale for which the resources should be loaded (locale name, e.g. en_CA).

bundle

The directory where the data is stored or the name of the .dat file.

fallback

Whether locale should match exactly or fallback to parent locale is allowed.

Rückgabewerte

Returns ResourceBundle object or null on error.

Beispiele

Beispiel #1 resourcebundle_create() example

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

Beispiel #2 ResourceBundle::create() example

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

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

¡Hola, mundo!

Siehe auch

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