Autor Zpráva
začátečník
Profil *
Ahoj, prosím o řešení, jak toto '2009-02-28 01:15:00' převést do UNIX formátu, abych s tím mohl dát pracovat, jedná se o další zpracovávání v php, nikoli mysql. Budu např. porovnávat, o kolik je dotyčný čas menší než současný apod.

Díky moc.
Nox
Profil
SELECT UNIX_TIMESTAMP(pole_s_casem) FROM tabulka...
začátečník
Profil *
psal jsem zpracování nikoli v mysql. Z formuláře mi jde tvar času 'YYYY-MM-DD HH:II:SS' a s ním chci dál pracovat, porovnat jestli ten čas není starší než současný čas atd.. takže NE v mysql, díky.
začátečník
Profil *
co strtotime() ?

if(strtotime('2009-02-28 01:15:00') + 3600 < strtotime(date('YYYY-MM-DD HH:II:SS'))) {
error...
}
Nox
Profil
začátečník
Aha... myslel jsem, že hodnotu získáš v mysql ale pak s ní provádíš nějakou řadu akcí, takže by to přes mysql nešlo

Stylem v posledním příspěvku bys prováděl neustále konvertování při každém ověřování, trochu drahé, raději ulož do proměnné

Nevím jestli strtotime bude pro takový formát fungovat, v manuálu se uvádí příklady jako "+1 day" atp.

Když jsem toto řešil před časem, rozložil jsem to reguálním výrazem a dosadil do mktime, ale možná je lepší způsob, snad ještě někdo přispěje
tqs
Profil *
Začátečník to napsal dobře, nejjednodušší je použít fci strtotime(), která čas ve formátu zmíněném výše bez problémů převede na UNIX timestamp. Tedy:
$cas = strtotime('2009-02-28 01:15:00');

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: