I did the same thing a month ago with Template::Toolkit so I have a format string handy. You'll need your item's creation time in epoch seconds to do this (swap it for "time()").
use Date::Format; print time2str('%a, %d %b %Y %H:%m:%S GMT', time()), "\n";
Here's the TT2 version. This assumes a DB "item" which has an epoch seconds "created_time" that matches GMT. You can easily do hour offsets to the "gmt" with multiples of 60*60.
[% USE date %] <pubDate>[%- gmt = item.created_time -%] [%- date.format(gmt, '%a, %d %b %Y %H:%m:%S GMT') -%]</pubDate>
Update: I left out the conversion I'm using from TIMESTAMP|DATETIME though there are more ways to do this. I *think* the regex will match different MySQL versions of the DB strings. Still have to do your own GMT adjustment somewhere if necessary.
use Date::Calc; my $item_time = Date::Calc::Mktime ( $mysql_timestamp =~ /^(\d\d\d\d)\D*(\d\d)\D*(\d\d)\D*(\d\d)\D*(\d\d)\D*(\d\d)$/ ); print time2str('%a, %d %b %Y %H:%m:%S GMT', $item_time), "\n";
In reply to Re: XML::RSS timestamping items
by Your Mother
in thread XML::RSS timestamping items
by tomazos
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |