powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / RSS date pubDate convert to date format
2 сообщений из 2, страница 1 из 1
RSS date pubDate convert to date format
    #39138521
Freeze729
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите для PHP одолеть перевод дат pubDate из RSS лент к виду DD.MM.YYYY HH24:MI,
местами год попадается 2015 или просто 15, хочется YYYY. И дни недели отсечь.

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<?php
$s[1]='Fri, 25 Dec 2015 15:46:19 +0300';
$s[2]='25 Dec 2015 16:34:09 +0300';
$s[3]='Fri, 25 Dec 15 13:20:26 +0300';
for($i=1;$i<4;$i++)
{
echo $s[$i]."<br>";
$s[$i]=strtolower($s[$i]);
$t= preg_replace("/(\\d{2} \\w{3} \\d{4}|\\d{2}) (\\d{2}:\\d{2}:\\d{2})(.*)/","\\1 \\2",$s[$i]); 
echo $t."<br><br>";
}
?> 


Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
Result:
Fri, 25 Dec 2015 15:46:19 +0300
fri, 25 dec 2015 15:46:19

25 Dec 2015 16:34:09 +0300
25 dec 2015 16:34:09

Fri, 25 Dec 15 13:20:26 +0300
fri, 25 dec 15 13:20:26


На Oracle сделал что-то нехорошее, но работающее. Если тут упростите, буду признателен.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
with t as 
(
      select 'Fri, 25 Dec 2015 15:46:19 +0300' as pubdate from dual  
  union all
      select '25 Dec 2015 16:34:09 +0300' from dual
  union all
      select 'Fri, 25 Dec 15 13:20:26 +0300' from dual
)

select pubdate,
replace(regexp_replace(regexp_replace(regexp_substr(pubdate, '[[:digit:]]{2}.....([[:digit:]]{4}|[[:digit:]]{2}).\d{2}:\d{2}:\d{2}'), '([[:digit:]]{2}).(\w{3}).([[:digit:]]{2})','\1 \2 \3'), '(\d{2}).(\w{3}).\d{2}(\d{2})|(\d{2}).(\d{2}:\d{2}:\d{2})','\1\2 20\3\4 \5'),' ','') as ff

from t




Код: javascript
1.
2.
3.
4.
5.
Result of SQL Query:
PUBDATE	FF
Fri, 25 Dec 2015 15:46:19 +0300	   25Dec201515:46:19
25 Dec 2015 16:34:09 +0300	   25Dec201516:34:09
Fri, 25 Dec 15 13:20:26 +0300	   25Dec201513:20:26
...
Рейтинг: 0 / 0
RSS date pubDate convert to date format
    #39138527
MikkiMouse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Freeze729,

Ну ты дружище ваще...

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
$s[1]='Fri, 25 Dec 2015 15:46:19 +0300';
$s[2]='25 Dec 2015 16:34:09 +0300';
$s[3]='Fri, 25 Dec 15 13:20:26 +0300';

foreach ($s as $dateString) {
    $date = new \DateTime($dateString);
    echo $date->format('d.m.Y H:i'), PHP_EOL;
}
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / RSS date pubDate convert to date format
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]