Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: сдвиг времени
 
 автор: CHER   (16.12.2006 в 19:40)   письмо автору
 
 

привет all

задача такая - есть код:


<?
$txt 
'9:30 Новости
9:50 Кубок Первого канала по хоккею. (Сборная России - Сборная Финляндии)
10:20 Новые песни о главном
12:00 Вечерние новости. (С субтитрами)
12:10 Чокнутый профессор
14:00 Кто хочет стать миллионером?
15:00 Время
15:20 Звезды на льду'
;
echo 
$txt;
?>



можно ли при помощи регулярных выражений сдвинуть время, чтобы результат был примерно такой:


15:30 Новости
15:50 Кубок Первого канала по хоккею. (Сборная России - Сборная Финляндии)
16:20 Новые песни о главном
18:00 Вечерние новости. (С субтитрами)
18:10 Чокнутый профессор
20:00 Кто хочет стать миллионером?
21:00 Время
21:20 Звезды на льду

   
 
 автор: kasmanaft   (16.12.2006 в 19:50)   письмо автору
 
   для: CHER   (16.12.2006 в 19:40)
 

Можно вот так попробовать:

<? 
$txt 
'9:30 Новости 
9:50 Кубок Первого канала по хоккею. (Сборная России - Сборная Финляндии) 
10:20 Новые песни о главном 
12:00 Вечерние новости. (С субтитрами) 
12:10 Чокнутый профессор 
14:00 Кто хочет стать миллионером? 
15:00 Время 
15:20 Звезды на льду'

echo 
nl2br(preg_replace("#(^|\r\n)(\d+):#e""'\\1'.(\\2+6).':'"$txt));
?>

   
 
 автор: Trianon   (16.12.2006 в 19:58)   письмо автору
 
   для: kasmanaft   (16.12.2006 в 19:50)
 


echo nl2br(preg_replace("#(^|\r\n)(\d+):#e", "'\\1'.((6+\\2)%24).':'", $txt)); 

Впрочем, ddhvvn уже отметил это.

   
 
 автор: CHER   (17.12.2006 в 09:46)   письмо автору
 
   для: Trianon   (16.12.2006 в 19:58)
 

спасибо работает :)

   
 
 автор: ddhvvn   (16.12.2006 в 19:51)   письмо автору
 
   для: CHER   (16.12.2006 в 19:40)
 

Можно, но нужно будет немного потрудиться!

Надо вынуть из строки время, затем прибавить к ЧАСУ 6, но нужно не забывать, что в строку может быть, например, 22:00. +6 выведет 28:00. Вот это и нужно учесть. Чтобы он вывел 04:00.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования