Autor Zpráva
pogg
Profil
Zdravím,

Mám takový dotázek ohledně času v php.

Začal jsem ukládat články do db s tímto formátem $casted = date('dmYHis'); teď bych ale potřeboval vyřešit zda je článek starý 10 minut.

výstup je například $casted = "24072009100613";

šlo by to složtě vypsat podmínkami jako že když se vteřin rovná 60 přičti minutu a pak hodiny dny atd. a pak porovnat rozdíl.

Nešlo by to nějak jednodušeji.

děkuji za případné rady....
tiso
Profil
pogg: mal si použiť timestamp alebo štandartný formát dátumu Y-m-d H:i:s, takže si preveď ten stĺpec v DB na jeden z týchto formátov.
Nox
Profil
To si bohužel vybral asi tu nejméně vhodnou cestu, v databázi buď použij jejich formát, typ sloupce datetime nebo tak nějak, případně to ukládej
jako UNIX timestamp (na to by měl být vhodný typ INT)...v tomto druhém jde jednoduše manipulovat přičítáním a odčítáním, třeba +3600 bude +1 hodina
a porovnání rozdílu prostým odečtením

Ten datetime jde manipulovat např. +1 hour, ale nepracuji s tím, takže konkrétně nevím
pogg
Profil
teď jsem narazil ještě na time(); a pak z něj stačí pouze < strtotime("-600 seconds") to by možná bylo lepší.... nebo ne???
tiso
Profil
pogg: nie, lebo ho nevieš porovnávať s tým formátom času ktorý máš uložený v databáze... preto sa práve používa Y-M-D H:i:s, lebo časové jednotky sú usporiadané postupne od najväčších po najmenšie, takže celý dátum sa dá jednoznačne zoradiť.
pogg
Profil
tiso
Nox

Díky chlapi jsem na ty data máslo:D

jdu na to....

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: