如何显示1分钟前在codeigniter中上传图片

时间:2018-07-19 11:36:27

标签: php codeigniter time

我必须在php或codeigniter中显示与当前时间的时差。

创建时间2018-07-19 05:05:22

当前时间2018-07-19 05:06:00。

没有人知道如何在应用程序窗口中显示1分钟前。

 function time_elapsed_A($secs){
    $bit = array(
        'y' => $secs / 31556926 % 12,
        'w' => $secs / 604800 % 52,
        'd' => $secs / 86400 % 7,
        'h' => $secs / 3600 % 24,
        'm' => $secs / 60 % 60,
        's' => $secs % 60
        );
    foreach($bit as $k => $v)
        return $secs;
        if($v > 0)$ret[] = $v . $k;
    return join(' ', $ret);
    }
function time_elapsed_B($secs){
    $bit = array(
        ' year'        => $secs / 31556926 % 12,
        ' week'        => $secs / 604800 % 52,
        ' day'        => $secs / 86400 % 7,
        ' hour'        => $secs / 3600 % 24,
        ' minute'    => $secs / 60 % 60,
        ' second'    => $secs % 60
        ); 
    foreach($bit as $k => $v){
        if($v > 1)$ret[] = $v . $k . 's';
        if($v == 1)$ret[] = $v . $k;
        }
    array_splice($ret, count($ret)-1, 0, 'and');
    $ret[] = 'ago.';
    return join(' ', $ret);
    }
echo $nowtime = time();
$oldtime = 1335939007;
echo $oldtime = strtotime("2018-07-07 23:29:46");
echo "time_elapsed_A: ".time_elapsed_A($nowtime-$oldtime)."\n";
echo "time_elapsed_B: ".time_elapsed_B($nowtime-$oldtime)."\n";

2 个答案:

答案 0 :(得分:0)

首先,必须将日期保存在Database中作为时间戳记strtotime(date('Y-m-d')),然后获取保存在Database中的时间,然后使用此代码。

$start_date = 'get the saved date in the database';
$current_date = strtotime(date('Y-m-d'));
$date1 = date_create(strftime('%Y-%m-%d',$start_date));
$date2 = date_create(strftime('%Y-%m-%d',$current_date));
$diff=date_diff($date1,$date2);
if($diff <=  360){
     echo 'show the image';
}
else{
     echo 'not show the image';
}

答案 1 :(得分:0)

您可以使用momentjs来做到这一点。例如显示“ 1分钟前”。

从momentjs文档中,您可以执行以下操作:

moment("20111031", "YYYYMMDD").fromNow(); // 7 years ago
moment("20120620", "YYYYMMDD").fromNow(); // 6 years ago
moment().startOf('day').fromNow();        // 6 hours ago
moment().endOf('day').fromNow();          // in 18 hours
moment().startOf('hour').fromNow();       // 35 minutes ago