Ezt PHP-ban hogy lehet megcsinálni? (lent)
Hogy hozzászól valaki is kiírja, hogy ma 9:57 aztán másnap tegnap 9:57 aztán meg már csak a sima dátumot, hogy 2014-08-25 9:57
Én a NOW() parancsot használom de így csak a sima dátum jelenik meg. Remélem érthetően fogalmaztam.
Köszi!
Ezt eddig jól is csinálod, a NOW() visszaadja azt a dátumot, időt, amikor a beírás megesett és eltárolod az adatbázisban (vagy esetleg egy file-ban)... ...nem is ebben a fázisban kell a problémáddal foglalkozni...
...hanem amikor kiíratod a hozzászólásokat, akkor megnézed, hogy az adatbázisban (vagy a file-ban) tárolt dátum és a mai dátum között mekkora a különbség... ...ha 24 óra, akkor "tegnap" szót íratod ki... ...ha 48 óra, akkor "tegnapelőtt"... ...blablabla, érthető? :-)
PHP-ban nincs NOW() parancs/függvény/hívd akárminek!
MySQL-ben van például.
A többi jó, elméleti megoldásnak.
Gyakorlatihoz:
Nézz utána például a DateTime osztálynak PHP-ben.
Valami ilyesmi:
$commentAt = new DateTime('2014-08-23 09:57:00'); // ez a hozzászólás dátuma
$check = new DateTime(date('Y-m-d')); // mai dátum 00:00:00
$output = ''; // ez lesz a kiírandó szöveg
// először vizgyáljuk meg a tegnap előttieket
$check->modify('-1 day');
if ($commentAt < $check) { // tegnap előtti
$output = $commentAt->format('Y.m.d. G:i');
} else {
$check->modify('+1 day');
$output = ($commentAt < $check ? 'tegnap ' : '').$commentAt->format('G:i'); // mainál régebbi -> tegnapi, mainál újabb -> mai (jövőbeni nem lehet!)
}
echo $output;
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!