添加'rd或'th或'st取决于数字

时间:2011-07-07 01:34:23

标签: php

  

可能重复:
  Display numbers with ordinal suffix in PHP

我认为它们被称为序数后缀。

见过日期的例子......

但是只是想知道是否有一些php可以根据数字显示出后缀。

示例:我们正在喷出用户的排行榜得分。

所以成员排名第一。我们希望回应:1' 成员排名847.我们想要喷出847'th

等等

我不能举例,因为数字是通过我们的dB

在页面上呈现的

只是想知道是否有某种代码片段,可以自动添加'th或'st或'rd到适当的数字。

1 个答案:

答案 0 :(得分:33)

我不知道有任何内置插件会这样做,但这应该有效:

function ordinal_suffix($num){
    $num = $num % 100; // protect against large numbers
    if($num < 11 || $num > 13){
         switch($num % 10){
            case 1: return 'st';
            case 2: return 'nd';
            case 3: return 'rd';
        }
    }
    return 'th';
}

(注11,12和13是特殊情况 - 11日,12日,13日对11日......)