(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
MessageFormatter::formatMessage -- msgfmt_format_message — İletiyi çabuk biçemler
Nesne yönelimli kullanım
$yerel
, string$kalıp
, array$bağımsız_değişkenler
): string|falseYordamsal kullanım
Girdi dizgesini bir biçemleyici nesne oluşturmaya gerek bırakmaksızın biçemler. Bu işlev, çözümleme işleminin bir kereliğine yapılıp bağımsız değişkenlerin ve durumun saklanmasına ihtiyaç olmadığında veya doğrudan ICU'ya ek bağlam sağlayarak çıktı özelleştirilmek istendiğinde kullanılır.
yerel
Yerele bağlı kısımların biçemlenmesinde kullanılacak yerel.
kalıp
İçine veri yerleştirilecek kalıp dizgesi. Kalıp 'tek tırnak dostu' sözdizimi kullanır; yorumlanmadan önce dahili olarak » Tırnaklama/Önceleme işleminden geçirilir.
bağımsız_değişkenler
Biçem dizgesine yerleştirilecek bağımsız değişkenleri içeren dizi.
Bir hata oluşmuşsa false
, aksi takdirde biçemlenmiş kalıp dizgesi ile döner.
Örnek 1 - msgfmt_format_message() örneği
<?php
echo msgfmt_format_message("en_US", "{0,number,integer} monkeys on {1,number,
integer} trees make {2,number} monkeys per tree\n",
array(4560, 123, 4560/123));
echo msgfmt_format_message("tr", "{0,number,integer} ağaçta {1,number,
integer} maymun, ağaç başına {2,number} maymun eder\n",
array(123, 4560, 4560/123));
echo msgfmt_format_message("en", 'You finished {place, selectordinal, one {#st} two {#nd} few {#rd} other {#th}}!', ['place' => 3]), "\n";
echo msgfmt_format_message("en",
"There {apple, plural,
=0 {are no apples}
=1 {is one apple...}
other {are # apples!}
}",
['apple' => 0]
), "\n";
Örnek 2 - Nesne yönelimli örnek
<?php
echo MessageFormatter::formatMessage("en_US", "{0,number,
integer} monkeys on {1,number,
integer} trees make {2,number} monkeys per tree\n",
array(4560, 123, 4560/123));
echo MessageFormatter::formatMessage("tr", "{0,number,
integer} ağaçta {1,number,
integer} maymun, ağaç başına {2,number} maymun eder\n",
array(123, 4560, 4560/123));
echo MessageFormatter::formatMessage("en", 'You finished {place, selectordinal, one {#st} two {#nd} few {#rd} other {#th}}!', ['place' => 3]), "\n";
echo MessageFormatter::formatMessage("en",
"There {apple, plural,
=0 {are no apples}
=1 {is one apple...}
other {are # apples!}
}",
['apple' => 0]
), "\n";
?>
Yukarıdaki örneğin çıktısı:
4,560 monkeys on 123 trees make 37.073 monkeys per tree 123 ağaçta 4.560 maymun, ağaç başına 37,073 maymun eder You finished 3rd! There are no apples
Örnek 3 - ICU'ya para birimini ortak ve dar para birimi simgesiyle biçimlendirme talimatı vermek
ICU ≥ 67 gerekir.
<?php
echo msgfmt_format_message("cs_CZ", "{0, number, :: currency/CAD}", array(123.45));
echo msgfmt_format_message("cs_CZ", "{0, number, :: currency/CAD unit-width-narrow}", array(123.45));
Yukarıdaki örneğin çıktısı:
123,45 CA$ 123,45 $