Koenig (07.12.2011/08:47)
localhost, Тут лучше массив создать, ключами будут нужные цифры, значениями нужные окончания, или даже полностью слова .
[php]
$arr = array(1 => 'секунда', 2 => 'секунды', 5 => 'секунд', ... , 59
А можешь поподробнее?! Как это реализовать то, я так понимаю нужно проверить последнюю цифру и тогда выдать то окончание которое нужно
L!MP (07.12.2011/10:19)
localhost, http://johncms.com/forum/index ... 03193
Я щас взорвусь
Меня гугл 3 раза послал и яндекс 2.
В общем нужно вывести правильно окончание с $realtime
localhost,
function morph($int, $expressions) {
if (count($expressions) < 3)
$expressions[2] = $expressions[1];
$int = (int)$int;
$count = $int % 100;
if ($count >= 5 && $count <= 20)
$result = 2;
else
$count = $count % 10;
if ($count == 1)
$result = 0;
elseif ($count >= 2 && $count <= 4)
$result = 1;
else
$result = 2;
return $int . ' ' . $expressions[ $result ];
}
echo morph($realtime, array('секунда', 'секунды', 'секунд'));
L!MP (07.12.2011/11:15)
localhost, [php]
function morph($int, $expressions) {
if (count($expressions) < 3)
$expressions[2] = $expressions[1];
$int = (int)$int;
$count = $int % 100;
if ($count >= 5 && $count <= 20)
Все класс,но теперь считает например 11 секунд пишет как 1 секунда, 12 секунд как 2 секунды
planeta8, Там два запроса, вечером может нарисую
localhost, Вот только недавно с тела нарисовал подобное, сам дорисуешь? Принцип думаю поймешь
http://koenig.h2m.ru/test/ng.txt
ЛокалХвост, чтоб более 100 корректно писались окончания, добавь в функцию
if (strlen($s)>2) {
$s = substr($s,-2);
}
В самое начало функции после определения $v например