Autor Zpráva
SkyVessel
Profil
Zdravím,

jsem z toho docela mimo...
Mám v databázi sloupec DATE s údajem např 2014-03-02.
v php mám $datum = time();.

Potřebuji zjistit rozdl ve dnech, popř měscích ve formátu 3m 2d...
Alphard
Profil
SkyVessel:
Mám v databázi sloupec DATE s údajem např 2014-03-02.
To je správně.

v php mám $datum = time();.
To je také možnost, ale jak sám vidíte, jsou s tím problémy. Mohl byste použít strtotime(), vypočítat rozdíl sekund a pak to postupně dělit...
...nebo k tomu přistoupit moderně, datum reprezentovat jako instanci Datetime a pro výpočet rozdílu použít metodu PHP: DateTime::diff - Manual.
SkyVessel
Profil
Díky. Mám to.
Jen jsem nepřišel na to, jak to formátovat. Třeba dostat měsíce a dny, když je to víc, jak 30 dní. Mám tam zapis format('%R%a dní')... Nějak nevím, co s těmi procenty. A taky pokud odečítám starší datum od dnešního, tak mám samozřejmě zápornou hodnotu - dá se jí nějak jednoduše zbavit? :)

Díky
Alphard
Profil
Naučte se pracovat s php manuálem. V sekci Return Values u metody diff (odkázaná výše) je od odkaz na DateInterval a tam je zase odkaz na metodu PHP: DateInterval::format - Manual.
SkyVessel
Profil
Alphard:
Děkuji.
Já se snažím :). Nějakou chvíli jsem tam strávil hledáním, ale k tomuhle jsem se neproklikal. Polepším se :). Děkuji za čas, jdu studovat...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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