0

重複の可能性:
PHP:タイムスタンプから相対的な日付/時刻を生成する

インターネットでたくさん検索していますが、phpを使用してタイムカウンターを作成する方法が見つかりませんでした。記事を投稿する場合は正確にこれを行いたいので、この記事がWebサイトに投稿されるまでの時間をユーザーに示したいと思います。

まず、秒単位で時刻を表示します。例:50秒前。

次に、60秒後、時間を分単位で表示します。例:1分前。

3番目に、1時間後、時間をHOURSで表示します。例:2時間前。

4番目に、24時間後、時刻がDAYSで表示されます。例:4日前。

私もjqueryでこれを見つけますが、Ajaxを使用してphpでこれを実行したいと思います。その後、phpでこれを簡単に実行できる方法を見つけたら、Ajaxでこれを実装できます。

4

1 に答える 1

1
function getTimeAgoStr($time) {
    $since = abs(time() - $time);

    $chunks = array(
        array(60 * 60 * 24 * 365 , 'year'),
        array(60 * 60 * 24 * 30 , 'month'),
        array(60 * 60 * 24 * 7, 'week'),
        array(60 * 60 * 24 , 'day'),
        array(60 * 60 , 'hour'),
        array(60 , 'minute'),
        array(1 , 'second')
    );

    for ($i = 0, $j = count($chunks); $i < $j; $i++) {
        $seconds = $chunks[$i][0];
        $name = $chunks[$i][1];
        if (($count = floor($since / $seconds)) != 0) {
            break;
        }
    }

    $print = ($count == 1) ? '1 '.$name : "$count {$name}s";
    return $print;
}
于 2013-01-23T09:13:05.213 に答える