RSS 2.0, MySQL a vytvoření data publikace (pubDate)

by Zdeněk Večeřa 2 Comments

Kvůli RSS někdy potřebujeme vytvořit zápis data a času v požadovaném tvaru.

Třeba v takovém: Sat, 20 Dec 2008 13:21:00 GMT+1

Uvedený formát můžeme vygenerovat v PHP nebo přímo pomocí SQL dotazu.

Datum a čas máme uložený v MySQL databázi ve sloupci publikace_od, který je datového typu DATETIME.

Vytvoření pomocí SQL dotazu:

Vytvořit datum publikace (pubDate) pomocí SQL funkce DATE_FORMAT je možné takto:

DATE_FORMAT(`publikace_od`,'%a, %d %b %Y %H:%i:%s GMT+1') AS `datum`

Vytvoření v PHP:

V PHP můžeme využít funkci date():

echo date('D, d M Y H:i:s', strtotime($data['publikace_od'])) . ' GMT+1';

Mohli bychom také použít funkci gmdate(), ta ale navíc zohledňuje časové pásmo, takže výsledný čas patřičně upraví. Bylo by tedy nutné nahradit GMT+1 za GMT.

RSS 2.0

Specifikace RSS 2.0 k nalezení zde.



Comments ( 2 )

  1. Jasper
    Myslím, že lepší je gmdate(), protože v té tvé první variantě musíš ještě ošéfovat GMT+1 vs. GMT+2 podle zimního/letního času. gmdate() to řeší myslím automaticky...
  2. hrach
    no, a nemusím ani znát (kopírovat/pamatovat) formát data, může se použít konstanta - viz: http://code.google.com/p/haefko/source/browse/trunk/haefko/application/views/rss-view.php#160

Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>