преобразование php mysql времени в секунды назад - PullRequest
1 голос
/ 09 октября 2011

У меня проблемы с преобразованием времени.по какой-то причине он, кажется, возвращается по умолчанию к 1970 году, который я считаю временем по умолчанию для Unix.Я использую этот код, когда я запускаю программу, я получаю 42 года вместо 2 лет.чего мне не хватаетпомогите пожалуйста вот код

<?php

  function convertime($ptime) {
        $etime = time() - $ptime;

        if($etime < 60) {
                return 'less than minute ag';
        }

        $a = array(12 * 30 * 24 * 60 * 60 => 'year', 30 * 24 * 60 * 60 => 'month', 24 * 60 * 60 => 'day', 60 * 60 => 'hour', 60 => 'minute' //  1                       =>  'second'
                );

        foreach($a as $secs => $str) {
                $d = $etime / $secs;
                if($d >= 1) {
                        $r = round($d);
                        return $r . ' ' . $str . ($r > 1 ? 's' : '');
                }
        }
  }

?>

<?php

  $ctime = 2009-02-23 10:09:00 //time from mysql
        echo convertime($ctime);

?>

Ответы [ 2 ]

2 голосов
/ 09 октября 2011

Обтекание strtotime() вокруг вашей отметки времени:

$ctime = strtotime('2009-02-23 10:09:00'); //time from mysql

http://codepad.org/HWQrLwBy

Вам нужно сравнить метку времени с меткой времени.

1 голос
/ 09 октября 2011
<?php

  function convertime($ptime) {
        $etime = time() - $ptime;

        if($etime < 60) {
                return 'less than minute ag';
        }

        $a = array(12 * 30 * 24 * 60 * 60 => 'year', 30 * 24 * 60 * 60 => 'month', 24 * 60 * 60 => 'day', 60 * 60 => 'hour', 60 => 'minute' //  1                       =>  'second'
                );

        foreach($a as $secs => $str) {
                $d = $etime / $secs;
                if($d >= 1) {
                        $r = round($d);
                        return $r . ' ' . $str . ($r > 1 ? 's' : '');
                }
        }
  }

?>

<?php

  $ctime = strtotime('2009-02-23 10:09:00'); //time from mysql
  echo convertime($ctime);

?>

попробуйте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...