Add 'rd или' th или 'st зависит от числа
Возможный дубликат:
Показать номера с порядковым суффиксом в PHP
Я думаю, что они называются ординарными суффиксами.
Увидели примеры дат...
Но просто подумал, есть ли какой-то php, который может вытолкнуть суффикс, зависящий от числа.
Пример: мы выводим таблицу лидеров наших пользователей.
Итак, член, занявший первое место, мы хотим повторить: 1'st
и член занял 847. Мы хотим вырвать 847'th
и т.д.
Я не могу привести пример, поскольку числа отображаются на странице через наш дБ
Просто подумал, есть ли какой-то фрагмент кода, который может добавить автоматически "th" или "st" или "rd" к соответствующему номеру.
Ответы
Ответ 1
Я не знаю никаких встроенных модулей, которые это делают, но это должно работать:
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-й...)
Ответ 2
<?php
function ordinalSuffix($num) {
$suffixes = array("st", "nd", "rd");
$lastDigit = $num % 10;
if(($num < 20 && $num > 9) || $lastDigit == 0 || $lastDigit > 3) return "th";
return $suffixes[$lastDigit - 1];
}
?>
(И нет, это не 1'st - это 1 st.)
P.S. Если кому-то это нужно в JavaScript: http://www.vbforums.com/showthread.php?t=653149