2010-03-16 9 views
6

für ($ rank = 0; $ rank < 100; $ rank ++) { printf ("Ihr Rang:% d% s", $ Rang, $ Suffix); }Ordnungszahlen lokalisieren

Gibt es eine gettext Funktion $ Suffix an die aktuelle Sprache und zurück, zum Beispiel zu lokalisieren:

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

, wenn die aktuelle locale Englisch ist, und was auch immer die richtigen „Ordnungs“ Formen der Zahlen sind in anderen Sprachen, wenn das Gebietsschema auf etwas anderes eingestellt ist?

Vielen Dank.

Antwort

7

Nicht, dass ich kenne, aber können Sie verwenden NumberFormatter

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

Quelle:

+0

Ich weiß nicht, ob ich einen Fehler in PHP entdeckt haben oder das schwedische Sprachpaket, aber wenn Sie dies für sv_SE oder sv_FI für 1 tun, erhalten Sie "1: e% digits-ordinal-neutral: 0: 1: a" Oder fehle ich ein zusätzliches Argument? – Lucent