convertire il timestamp in tempo fa in php?

c
Ottieni la data corrente, dato un fuso orario in PHP?
Converti un formato data in PHP

Dovresti usare il file DateTime classe per ottenere la differenza tra 2 volte, cioè;

$time1 = new DateTime('2014-10-06 09:00:59');
$now = new DateTime();
$interval = $time1->diff($now,true);

e poi usa quella differenza (che è a DateInterval oggetto, $interval) per trovare la più piccola differenza di tempo come questa;

if ($interval->y) echo $interval->y . ' years';
elseif ($interval->m) echo $interval->m . ' months';
elseif ($interval->d) echo $interval->d . ' days';
elseif ($interval->h) echo $interval->h . ' hours';
elseif ($interval->i) echo $interval->i . ' minutes';
else echo "less than 1 minute";

che dovrebbe fare eco (al momento della scrittura) 13 hours.

Un'altra soluzione

Controllare questa funzione valore intero()

$seconds_ago = (time() - strtotime('2014-01-06 15:25:08'));

if ($seconds_ago >= 31536000) {
    echo "Seen " . intval($seconds_ago / 31536000) . " years ago";
} elseif ($seconds_ago >= 2419200) {
    echo "Seen " . intval($seconds_ago / 2419200) . " months ago";
} elseif ($seconds_ago >= 86400) {
    echo "Seen " . intval($seconds_ago / 86400) . " days ago";
} elseif ($seconds_ago >= 3600) {
    echo "Seen " . intval($seconds_ago / 3600) . " hours ago";
} elseif ($seconds_ago >= 60) {
    echo "Seen " . intval($seconds_ago / 60) . " minutes ago";
} else {
    echo "Seen less than a minute ago";
}
Ottieni la data corrente, dato un fuso orario in PHP?
Converti un formato data in PHP

Rete di tutor

Condividi questo

Impara PHP dalla A alla Z