2010-03-16 28 views
6

için ($ rank = 0; $ rank < 100; $ rank ++) { printf ("Sıralamanız:% d% s", $ rank, $ suffix);yerelleştirilmiş sıra sayıları

Your rank: 0th 
Your rank: 1st 
Your rank: 2nd 
Your rank: 3rd 
Your rank: 4th 

geçerli yerel İngilizce'dir ve sayıların ne olursa olsun doğru "sıralı" formları ise: }

örneğin geçerli bir dile $ eki lokalize ve dönmek için bir gettext işlevi vardır var mı yerel ayar başka bir şeye ayarlandığında başka dillerdendir?

Teşekkür ederiz.

cevap

7

Bildiğim kadarıyla hayır, ama kullanabileceğiniz NumberFormatter

$nf = new NumberFormatter('en_US', NumberFormatter::ORDINAL); 
print $nf->format(123); // prints 123rd 

Kaynak: PHP bir hata fark ettik eğer

+0

Bilmiyorum ya da İsveç dil paketi, ancak bunu 1 için sv_SE veya sv_FI için yapıyor "1: e% digits-ordinal-neutre: 0: 1: a" Ya da ek bir argümanı kaçırmıyorum? – Lucent