Mid-Atlantic Developer Conference - Call for Speakers

MessageFormatter::setPattern

msgfmt_set_pattern

(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)

MessageFormatter::setPattern -- msgfmt_set_patternBiçemleyici tarafından kullanılacak kalıbı tanımlar

Açıklama

Nesne yönelimli kullanım

bool MessageFormatter::setPattern ( string $kalıp )

Yordamsal kullanım

bool msgfmt_set_pattern ( MessageFormatter $biçemleyici , string $kalıp )

Biçemleyici tarafından kullanılacak kalıbı tanımlar.

Değiştirgeler

biçemleyici

İleti biçemleyici

kalıp

Bu ileti biçemleyici tarafından kullanılacak kalıp dizgesi. Kalıp 'tek tırnak dostu' sözdizimi kullanır; yorumlanmadan önce dahili olarak »  umsg_autoQuoteApostrophe işlevinden geçirilir.

Dönen Değerler

Başarı durumunda TRUE, başarısızlık durumunda FALSE döner.

Örnekler

Örnek 1 - msgfmt_set_pattern() örneği

<?php
$fmt 
msgfmt_create"tr_TR""{0, number} ağaçta {1, number} maymun var." );
echo 
"Öntanımlı kalıp: '" msgfmt_get_pattern$fmt ) . "'\n";
echo 
"Biçemleme sonucu: " msgfmt_format$fmt, array(123456) ) . "\n";

msgfmt_set_pattern$fmt"{0, number} maymuna karşılık {1, number} ağaç var." );
echo 
"Yeni kalıp: '" msgfmt_get_pattern$fmt ) . "'\n";
echo 
"Biçemleme sonucu: " msgfmt_format$fmt, array(456123) ) . "\n";
?>

Örnek 2 - Nesne yönelimli örnek

<?php
$fmt 
= new MessageFormatter"tr_TR""{0, number} ağaçta {1, number} maymun var." );
echo 
"Öntanımlı kalıp: '" $fmt->getPattern() . "'\n";
echo 
"Biçemleme sonucu: " $fmt->format(array(123456)) . "\n";

$fmt->setPattern("{0, number} maymuna karşılık {1, number} ağaç var." );
echo 
"Yeni kalıp: '" $fmt->getPattern() . "'\n";
echo 
"Biçemleme sonucu: " $fmt->format(array(456123)) . "\n";
?>

Yukarıdaki örneğin çıktısı:

Öntanımlı kalıp: '{0, number} ağaçta {1, number} maymun var.'
Biçemleme sonucu: 123 ağaçta 456 maymun var.
Yeni kalıp: '{0, number} maymuna karşılık {1, number} ağaç var.'
Biçemleme sonucu: 456 maymuna karşılık 123 ağaç var.

Ayrıca Bakınız

add a note add a note

User Contributed Notes 1 note

up
0
neil dot smith at vouchercloud dot com
3 years ago
A correct example would be to transpose the placeholders in pattern 2.

This is typical where changing messages from one language to another changes the word order, to result in a sensible translation.

Let's imagine it's localised as Spanish or Russian instead of English.
So really you want to have pattern 2 provided by your human translator to read like this :

New pattern: '{1,number} trees hosting {0,number} monkeys'
Formatted number: 456 trees hosting 123 monkeys

That is - the order of arguments is always the same, but your translated message content has the placeholders transposed for non English languages.
To Top