Метод ordinal
Метод ordinal класса Number преобразует переданное число в строку с порядковым суффиксом на английском языке. Первым параметром передаётся число для преобразования, вторым необязательным параметром - локаль для форматирования. Метод возвращает строку с числом и соответствующим суффиксом (st, nd, rd, th).
Синтаксис
<?php
use Illuminate\Support\Number;
Number::ordinal($number, $locale = null);
?>
Пример
Давайте преобразуем числа в порядковые числительные:
<?php
use Illuminate\Support\Number;
$res1 = Number::ordinal(1);
$res2 = Number::ordinal(2);
$res3 = Number::ordinal(3);
$res4 = Number::ordinal(4);
$res5 = Number::ordinal(5);
echo $res1;
echo $res2;
echo $res3;
echo $res4;
echo $res5;
?>
Результат выполнения кода:
"1st"
"2nd"
"3rd"
"4th"
"5th"
Пример
Давайте преобразуем числа с десятками и сотнями:
<?php
use Illuminate\Support\Number;
$res1 = Number::ordinal(11);
$res2 = Number::ordinal(12);
$res3 = Number::ordinal(13);
$res4 = Number::ordinal(21);
$res5 = Number::ordinal(22);
$res6 = Number::ordinal(23);
$res7 = Number::ordinal(101);
echo $res1;
echo $res2;
echo $res3;
echo $res4;
echo $res5;
echo $res6;
echo $res7;
?>
Результат выполнения кода:
"11th"
"12th"
"13th"
"21st"
"22nd"
"23rd"
"101st"
Пример
Давайте используем метод с указанием локали:
<?php
use Illuminate\Support\Number;
$res1 = Number::ordinal(1, 'en');
$res2 = Number::ordinal(2, 'en');
$res3 = Number::ordinal(3, 'en');
$res4 = Number::ordinal(4, 'en');
echo $res1;
echo $res2;
echo $res3;
echo $res4;
?>
Результат выполнения кода:
"1st"
"2nd"
"3rd"
"4th"
Пример
Давайте используем метод для форматирования порядковых числительных в коллекции:
<?php
use Illuminate\Support\Number;
use Illuminate\Support\Collection;
$numbers = new Collection([1, 2, 3, 4, 5, 10, 11, 12]);
$ordinals = $numbers->map(function ($num) {
return Number::ordinal($num);
});
foreach ($ordinals as $ordinal) {
echo $ordinal;
}
?>
Результат выполнения кода:
"1st"
"2nd"
"3rd"
"4th"
"5th"
"10th"
"11th"
"12th"
Пример
Давайте используем метод для нумерации элементов в списке:
<?php
use Illuminate\Support\Number;
$items = ['article', 'category', 'user', 'comment'];
foreach ($items as $index => $item) {
$position = Number::ordinal($index + 1);
echo "The " . $position . " item is " . $item;
}
?>
Результат выполнения кода:
"The 1st item is article"
"The 2nd item is category"
"The 3rd item is user"
"The 4th item is comment"
Смотрите также
-
метод
format,
который форматирует число с разделителями -
метод
currency,
который форматирует число как валюту -
метод
spell,
который преобразует число в текстовое представление -
метод
percentage,
который форматирует число как процент