获取当前时间的时间戳

时间:2011-03-27 13:07:59

标签: php oop datetime

我有当天的日期时间。我需要获得两个unix时间戳的开始和本周的结束。我如何使用dateperiod或dateinterval类?

3 个答案:

答案 0 :(得分:13)

$now = time();
$beginning_of_week = strtotime('last Monday', $now); // Gives you the time at the BEGINNING of the week
$end_of_week = strtotime('next Sunday', $now) + 86400; // Gives you the time at the END of the last day of the week

答案 1 :(得分:5)

if (date('w', time()) == 1)
    $beginning_of_week = strtotime('Today',time()); 
else 
    $beginning_of_week = strtotime('last Monday',time()); 

if (date('w', time()) == 7)
    $end_of_week = strtotime('Today', time()) + 86400;
else 
    $end_of_week = strtotime('next Sunday', time()) + 86400;

答案 2 :(得分:2)

public static function getDaysInWeek($timestamp)
{       
    $monday = idate('w', $timestamp) == 1 ? $timestamp : strtotime("last Monday", $timestamp);

    $days = array();
    for ($i = 0; $i < 7; ++$i)
    {
        $days[$i] = strtotime('+' . $i . ' days', $monday);
    }
    return $days;
}