PHP獲取今日、本周、本月、今年的開始日期和結束日期


/**
  * 今天開始的Y-m-d H:i:s
  *
  * @return string
  */
public static function beginToday()
{
    return date('Y-m-d').' 00:00:00';
}

/**
  * 今天結束的Y-m-d H:i:s
  *
  * @return string
  */
public static function endToday()
{
    return date('Y-m-d').' 23:59:59';
}

/**
  * 本周的開始日期
  * 
  * @param bool $His     是否展示時分秒 默認true
  *
  * @return false|string
  */
public static function beginWeek($His = true)
{
    $timestamp = mktime(0, 0, 0, date('m'), date('d') - date('w') + 1, date('Y'));
    return $His ? date('Y-m-d H:i:s', $timestamp) : date('Y-m-d', $timestamp);
}

/**
  * 本周的結束日期
  *
  * @param bool $His     是否展示時分秒 默認true
  *
  * @return false|string
  */
public static function endWeek($His = true)
{
    $timestamp = mktime(23, 59, 59, date('m'), date('d') - date('w') + 7, date('Y'));
    return $His ? date('Y-m-d H:i:s', $timestamp) : date('Y-m-d', $timestamp);
}

/**
  * 本月的開始日期
  * 
  * @param bool $His     是否展示時分秒 默認true
  *
  * @return false|string
  */
public static function beginMonth($His = true)
{
    $timestamp = mktime(0, 0, 0, date('m'), 1, date('Y'));
    return $His ? date('Y-m-d H:i:s', $timestamp) : date('Y-m-d', $timestamp);
}

/**
  * 本月的結束日期
  *
  * @param bool $His     是否展示時分秒 默認true
  *
  * @return false|string
  */
public static function endMonth($His = true)
{
    $timestamp = mktime(23, 59, 59, date('m'), date('t'), date('Y'));
    return $His ? date('Y-m-d H:i:s', $timestamp) : date('Y-m-d', $timestamp);
}

/**
  * 幾年的開始日期
  *
  * @param bool $His     是否展示時分秒 默認true
  *
  * @return false|string
  */
public static function beginYear($His = true)
{
    $timestamp = mktime(0, 0, 0, 1, 1, date('Y'));
    return $His ? date('Y-m-d H:i:s', $timestamp) : date('Y-m-d', $timestamp);
}

/**
  * 本月的結束日期
  *
  * @param bool $His     是否展示時分秒 默認true
  *
  * @return false|string
  */
public static function endYear($His = true)
{
    $timestamp = mktime(23, 59, 59, 12, 31, date('Y'));
    return $His ? date('Y-m-d H:i:s', $timestamp) : date('Y-m-d', $timestamp);
}

 也可以可以使用Carbon包來獲取開始和結束日期

Carbon::now()->startOfMonth()->toDateTimeString();

Carbon::now()->endOfMonth()->toDateTimeString();

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM