簡體   English   中英

如何顯示上次登錄時間(年,月,周,日,時間,秒)..我試過但輸出錯誤

[英]How to show last login time ( year,month,week,day,time,sec).. i tried but Wrong output

$ lastLoginTime = date(“ Ymd H:i:s”); //最后一次登錄,它將在登錄期間存儲在數據庫中

假設最后一次登錄是:2012-05-11 07:57:46
當前時間是:$ current_time = date(“ Ymd H:i:s”)

    $diff_seconds  = strtotime($current_time) - strtotime($lastLoginTime);
    $diff_weeks    = floor($diff_seconds/604800);
    $diff_seconds -= $diff_weeks   * 604800;
    $diff_days     = floor($diff_seconds/86400);
    $diff_seconds -= $diff_days    * 86400;
    $diff_hours    = floor($diff_seconds/3600);
    $diff_seconds -= $diff_hours   * 3600;
    $diff_minutes  = floor($diff_seconds/60);
    $diff_seconds -= $diff_minutes * 60;



    echo "You last logged in $diff_weeks weeks, $diff_days days, ";
    echo "$diff_hours hours, $diff_minutes minutes, and $diff_seconds minutes ago.";

輸出錯誤... !! :-(

Google(嘗試一下)給了我這個:

<?php
function duration($seconds, $max_periods) {
    $periods = array("year" => 31536000, "month" => 2419200, "week" => 604800, "day" => 86400, "hour" => 3600, "minute" => 60, "second" => 1);
    $i = 1;
    foreach ( $periods as $period => $period_seconds )
    {
        $period_duration = floor($seconds / $period_seconds);
        $seconds = $seconds % $period_seconds;
        if ( $period_duration == 0 ) continue;
        $duration[] = "{$period_duration} {$period}" . ($period_duration > 1 ? 's' : '');
        $i++;
        if ( $i >  $max_periods ) break;
    }
    return implode(' ', $duration);
}
$diff_seconds  = strtotime($current_time) - strtotime($lastLoginTime);

print(duration($diff_seconds, 6));
?>

http://www.hawkee.com/snippet/2056/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM