在 PHP 中显示带有序号后缀的数字
我想按如下方式显示数字
- 1 作为 1st,
- 2 作为第 2,
- ...,
- 150作为第150位。
我应该如何为代码中的每个数字找到正确的序号后缀(st、nd、rd 或 th)?
我想按如下方式显示数字
我应该如何为代码中的每个数字找到正确的序号后缀(st、nd、rd 或 th)?
$ends = array('th','st','nd','rd','th','th','th','th','th','th');
if (($number %100) >= 11 && ($number%100) <= 13)
$abbreviation = $number. 'th';
else
$abbreviation = $number. $ends[$number % 10];
您要写入的数字在哪里。适用于任何自然数。$number
作为一项功能:
function ordinal($number) {
$ends = array('th','st','nd','rd','th','th','th','th','th','th');
if ((($number % 100) >= 11) && (($number%100) <= 13))
return $number. 'th';
else
return $number. $ends[$number % 10];
}
//Example Usage
echo ordinal(100);
PHP为此提供了内置功能。它甚至可以处理国际化!
$locale = 'en_US';
$nf = new NumberFormatter($locale, NumberFormatter::ORDINAL);
echo $nf->format($number);
请注意,此功能仅在 PHP 5.3.0 及更高版本中可用。