Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

localize ordinal numbers

for ($rank=0; $rank<100; $rank++) { printf("Your rank: %d%s", $rank, $suffix); }

Does there exist a gettext function to localize $suffix to the current language and return, for example:

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

if the current locale is English, and whatever the correct "ordinal" forms of numbers are in other languages when the locale is set to something else?

Thank you.

like image 977
abernier Avatar asked Mar 16 '10 10:03

abernier


1 Answers

Not that I know of, but you can use NumberFormatter

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

Source:

  • Internationalization in PHP 5.3
like image 141
Gordon Avatar answered Oct 13 '22 07:10

Gordon