LINUX.ORG.RU

>s/часа/часов/

"Последние сообщения за 23 часов"

Одним s/../../ не обойтись, проще ngettext прикрутить или свою функцию на 4 строчки :)

KRoN73 ★★★★★
()
Ответ на: комментарий от vlIlich

>может, так?

Если лениво копаться с ngettext, то так:

function declension($n, $s1, $s2=NULL, $s5=NULL) // 1 нож 2 ножа 5 ножей
{
    if($s2 === NULL)
        list($s1, $s2, $s5) = explode(',', $s1);

    $ns=intval(substr($n,-1));
    $n2=intval(substr($n,-2));

    if($n2>=10 && $n2<=19) return $s5;
    if($ns==1) return $s1;
    if($ns>=2&&$ns<=4) return $s2;
    return $s5;
}

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Ага, ещё до кучи написать всё словами:

Последние сообщения за один миллион тридцать одну тысячу восемьсот пятьдесят шесть часов :)

Помню, встречал такую задачку в одной книжке по программированию. Что занимательно, фамилия автора была далеко не русской.

gaa ★★
()
Ответ на: комментарий от gaa

>Помню, встречал такую задачку в одной книжке по программированию.

Весьма практичная сегодня задача. Скажем, скармливать время синтезатору речи, чтобы он это время зачитывал :)

...

Всё никак не подберу хорошую систему голосового управления, чтобы соответствующий скрипт по команде, скажем, «комп, время?» вызывался :) Ну и можно ещё доработать скриптик, чтобы время нечёткое мог давать - «пятнадцать минут первого».

>Что занимательно, фамилия автора была далеко не русской.

Ну, у меня тоже фамилия не русская :)

KRoN73 ★★★★★
()

Где-то с год назад.. а может чуть меньше... я это уже предлагал.. Ни у кого нет времени делать...

delilen ★☆
()
Ответ на: комментарий от mator

Макс ленивый, пока в жаббере не пнешь, патч не прикрутит ;)

JB ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.