Неправильно проговаривает время

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
PAV
Сообщения: 968
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 71 раз
Поблагодарили: 95 раз

Неправильно проговаривает время

Сообщение PAV » Вт окт 28, 2014 2:57 pm

С недавних пор Алиса начала криво проговаривать дату и время.
say('Точное время '.timeNow(),1); вот такая команда приводит к:
Точное время 14ти часов 52вух минуты

Куда копать?

Как вообще научить ее проговаривать время правильно?
Со временем так:

Код: Выделить всё

say("Московское время. ". (int)date('G',time()). ".часов". ".". chti((int)date('i',time()),'минута','минуты','минут'),1);

function chti($string, $ch1, $ch2, $ch3){
$ff=Array('0','1','2','3','4','5','6','7','8','9');
if(substr($string,-2, 1)==1 AND strlen($string)>1) $ry=array("0 $ch3","1 $ch3","2 $ch3","3 $ch3" ,"4 $ch3","5 $ch3","6 $ch3","7 $ch3","8 $ch3","9 $ch3");
else $ry=array("0 $ch3","1 $ch1","2 $ch2","3 $ch2","4 $ch2","5 $ch3"," 6 $ch3","7 $ch3","8 $ch3"," 9 $ch3");
$string1=substr($string,0,-1).str_replace($ff, $ry, substr($string,-1,1));
return $string1;
}

UPD: выкрутился http://smartliving.ru/forum/viewtopic.p ... t=10#p9341
Ответить