精华内容
下载资源
问答
  • 项目中遇到了选择日期获取当前日期一周的周一和周日的日期,如下: 项目使用的是 ant design,所以第一时间想到了 DatePicker 中的 WeekPicker 组件,查询文档得到 WeekPicker组件中的属性和方法如下: 引入...

    项目中遇到了选择日期获取当前日期一周的周一和周日的日期,如下:

     

    项目使用的是 ant design,所以第一时间想到了 DatePicker 中的 WeekPicker 组件,查询文档得到 WeekPicker 组件中的属性和方法如下:

    引入组件,编写相关代码如下:

    <WeekPicker
        value={weekData}
        onChange={this.handleWeekChange}
        style={{ width: 260 }}
        placeholder='请选择日期'
    />
    
    handleWeekChange = (weekData, weekStrings) => {
        console.log(weekData, weekStrings);
    }

    选择日期,打印 onChange 方法获取到回调值:

    通过打印信息可以看出,返回的 weekData 是一个 moment 对象,weekString 是当前对象解析出来的时间值,

    默认显示了选中的年份和第几周,这并不是我想要的,如果需要获取到当前周详细的时间信息,则需要对返回的结果进行处理,代码如下:

    handleWeekChange = weekData => {
      const startDate = moment(weekData).day(1).format('YYYY/MM/DD (dddd)'); // 周一日期
      const endDate = moment(weekData).day(7).format('YYYY/MM/DD (dddd)'); // 周日日期
      console.log(startDate, endDate);
    }

    重新选择时间(比如2018年11月6日):

    查看打印信息,如下:

    可以看到,已经正确获取到了当前日期所在周的起止日期了。

    这里的日期解析主要用到了 moment.js 提供的两个方法,

    moment(date).day(1) 代表指定日期所在周的星期一的日期,
    moment(date).day(7) 代表指定日期所在周的星期日的日期,
    并且通过 format 方法格式化成指定的格式。更多 moment 的使用方法,参考 moment.js 文档
     
     

    转载于:https://www.cnblogs.com/wx1993/p/10097255.html

    展开全文
  • 项目中遇到了选择日期获取当前日期一周的周一和周日的日期,如下:项目使用的是 ant design,所以第一时间想到了 DatePicker 中的 WeekPicker 组件,查询文档得到 WeekPicker组件中的属性和方法如下:引入组件,编写...

    项目中遇到了选择日期获取当前日期一周的周一和周日的日期,如下:

    ebbe6ae68d722a1b00abb1f953974aaf.png

    项目使用的是 ant design,所以第一时间想到了 DatePicker 中的 WeekPicker 组件,查询文档得到 WeekPicker 组件中的属性和方法如下:

    1eb327f769318776a0c07b6c0f1554ae.png

    引入组件,编写相关代码如下:

    value={weekData}

    onChange={this.handleWeekChange}

    style={{ width: 260}}

    placeholder='请选择日期'

    />

    handleWeekChange= (weekData, weekStrings) =>{

    console.log(weekData, weekStrings);

    }

    选择日期,打印 onChange 方法获取到回调值:

    83e81e54f47fb00553e5de27536848c6.png

    通过打印信息可以看出,返回的 weekData 是一个 moment 对象,weekString 是当前对象解析出来的时间值,

    默认显示了选中的年份和第几周,这并不是我想要的,如果需要获取到当前周详细的时间信息,则需要对返回的结果进行处理,代码如下:

    handleWeekChange = weekData =>{

    const startDate= moment(weekData).day(1).format('YYYY/MM/DD (dddd)'); //周一日期

    const endDate = moment(weekData).day(7).format('YYYY/MM/DD (dddd)'); //周日日期

    console.log(startDate, endDate);

    }

    重新选择时间(比如2018年11月6日):

    df191703bf812cb0cddef9303414e3d5.png

    查看打印信息,如下:

    c29b4cd59044bc846c97978704cb79c8.png

    可以看到,已经正确获取到了当前日期所在周的起止日期了。

    这里的日期解析主要用到了 moment.js 提供的两个方法,

    moment(date).day(1) 代表指定日期所在周的星期一的日期,

    moment(date).day(7) 代表指定日期所在周的星期日的日期,

    并且通过 format 方法格式化成指定的格式。更多 moment 的使用方法,参考moment.js 文档

    展开全文
  • 本文推荐给大家个php类文件,可以根据指定日期获取所在周的起始时间和结束时间,并附上使用实例,有需要的小伙伴参考下吧根据指定的前后两个日期,计算这两个日期之间各个周的起始时间和结束时间,以及各个月的...

    本文推荐给大家一个php类文件,可以根据指定日期获取所在周的起始时间和结束时间,并附上使用实例,有需要的小伙伴参考下吧

    根据指定的前后两个日期,计算这两个日期之间各个周的起始时间和结束时间,以及各个月的起始时间和结束时间

    日志格式化类 Date.class.php

    class Datefmt{

    function __construct() {}

    /**

    * 根据指定日期获取所在周的起始时间和结束时间

    */

    public function get_weekinfo_by_date($date) {

    $idx = strftime("%u", strtotime($date));

    $mon_idx = $idx - 1;

    $sun_idx = $idx - 7;

    return array(

    'week_start_day' => strftime('%Y-%m-%d', strtotime($date) - $mon_idx * 86400),

    'week_end_day' => strftime('%Y-%m-%d', strtotime($date) - $sun_idx * 86400),

    );

    }

    /**

    * 根据指定日期获取所在月的起始时间和结束时间

    */

    public function get_monthinfo_by_date($date){

    $ret = array();

    $timestamp = strtotime($date);

    $mdays = date('t', $timestamp);

    return array(

    'month_start_day' => date('Y-m-1', $timestamp),

    'month_end_day' => date('Y-m-'.$mdays, $timestamp)

    );

    }

    /**

    * 获取指定日期之间的各个周

    */

    public function get_weeks($sdate, $edate) {

    $range_arr = array();

    // 检查日期有效性

    $this->check_date(array($sdate, $edate));

    // 计算各个周的起始时间

    do {

    $weekinfo = $this->get_weekinfo_by_date($sdate);

    $end_day = $weekinfo['week_end_day'];

    $start = $this->substr_date($weekinfo['week_start_day']);

    $end = $this->substr_date($weekinfo['week_end_day']);

    $range = "{$start} ~ {$end}";

    $range_arr[] = $range;

    $sdate = date('Y-m-d', strtotime($sdate)+7*86400);

    }while($end_day < $edate);

    return $range_arr;

    }

    /**

    * 获取指定日期之间的各个月

    */

    public function get_months($sdate, $edate) {

    $range_arr = array();

    do {

    $monthinfo = $this->get_monthinfo_by_date($sdate);

    $end_day = $monthinfo['month_end_day'];

    $start = $this->substr_date($monthinfo['month_start_day']);

    $end = $this->substr_date($monthinfo['month_end_day']);

    $range = "{$start} ~ {$end}";

    $range_arr[] = $range;

    $sdate = date('Y-m-d', strtotime($sdate.'+1 month'));

    }while($end_day < $edate);

    return $range_arr;

    }

    /**

    * 截取日期中的月份和日

    * @param string $date

    * @return string $date

    */

    public function substr_date($date) {

    if ( ! $date) return FALSE;

    return date('m-d', strtotime($date));

    }

    /**

    * 检查日期的有效性 YYYY-mm-dd

    * @param array $date_arr

    * @return boolean

    */

    public function check_date($date_arr) {

    $invalid_date_arr = array();

    foreach ($date_arr as $row) {

    $timestamp = strtotime($row);

    $standard = date('Y-m-d', $timestamp);

    if ($standard != $row) $invalid_date_arr[] = $row;

    }

    if ( ! empty($invalid_date_arr)) {

    die("invalid date -> ".print_r($invalid_date_arr, TRUE));

    }

    }

    }

    类文件的使用

    require_once "Datefmt.class.php";

    $datefmt = new Datefmt();

    // 输出11月1日和30日之间的各周

    var_dump($datefmt->get_weeks('2014-11-05', '2014-11-29'));

    /*结果为

    array(4) {

    [0]=>

    string(13) "11-03 ~ 11-09"

    [1]=>

    string(13) "11-10 ~ 11-16"

    [2]=>

    string(13) "11-17 ~ 11-23"

    [3]=>

    string(13) "11-24 ~ 11-30"

    }

    */

    // 输出2月1日和11月30日

    var_dump($datefmt->get_months('2014-02-03', '2014-11-29'));

    /*结果为

    array(10) {

    [0]=>

    string(13) "02-01 ~ 02-28"

    [1]=>

    string(13) "03-01 ~ 03-31"

    [2]=>

    string(13) "04-01 ~ 04-30"

    [3]=>

    string(13) "05-01 ~ 05-31"

    [4]=>

    string(13) "06-01 ~ 06-30"

    [5]=>

    string(13) "07-01 ~ 07-31"

    [6]=>

    string(13) "08-01 ~ 08-31"

    [7]=>

    string(13) "09-01 ~ 09-30"

    [8]=>

    string(13) "10-01 ~ 10-31"

    [9]=>

    string(13) "11-01 ~ 11-30"

    }

    */

    展开全文
  • PHP获取本周的起止时间

    千次阅读 2015-11-24 04:07:58
    PHP获取本周的起止时间/* 这里首先判断是不是周一,date('w')如果为0代表星期日,1就代表星期,如果是的话获取周一的unix时间戳(从某个时间点到现在的秒数) 如果不是周一,那么就获取最近的周一(过去的)的时间 */...

    PHP获取本周的起止时间

    /*
    这里首先判断是不是周一,date('w')如果为0代表星期日,1就代表星期一,如果是的话获取周一的unix时间戳(从某个时间点到现在的秒数)
    如果不是周一,那么就获取最近的周一(过去的)的时间
    */
    $time = ('1' == date('w')) ? strtotime('Monday', $now) : strtotime('last Monday', $now);  
    
    //下面2句就是将上面得到的时间做一个起止转换
    
    //得到本周开始的时间,时间格式为:yyyy-mm-dd hh:ii:ss 的格式
    $beginTime = date('Y-m-d 00:00:00', $time);  
    
    //得到本周末最后的时间
    $endTime = date('Y-m-d 23:59:59', strtotime('Sunday', $now));  
    
    //此事$beginTime和$endTime都获取到了!
    

    下面附一段代码,得到的4个时间是什么?留给读者试验下就知道了!

    
    $getWeekDay=date("w");
    
    echo date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$getWeekDay+1-7,date("Y"))),"\n";
    echo date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$getWeekDay+7-7,date("Y"))),"\n";
    
    echo date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$getWeekDay+1,date("Y"))),"\n";
    echo date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$getWeekDay+7,date("Y"))),"\n";
    展开全文
  • [javascript]代码库function getPreviousWeek(year,month,day) {var today = new Date(year,month - 1 ,day);var week = today.getDay();if (week == 0 ) {week = 7 ;}var monday = new Date(today.valueOf() - (...
  • 代码: Calendar cal = Calendar.getInstance(); 获取一周的起止时间: cal.setFirstDayOfWeek(Calendar.MONDAY);//将每周第一天设为星期一,...
  • 有的时候需要获取当前... * 获取当前时间所在自然周的起止日期 * * @return */ public static Map<String, String> weekBeginningAndEnding() { Map<String, String> map = new HashMap<>();
  • 获取一周的起止时间:cal.setFirstDayOfWeek(Calendar.MONDAY);//将每周第一天设为星期一,默认是星期天cal.add(Calendar.DATE, -1*7);cal.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);startDate = Da...
  • 由于老外的星期都是从周日开始,中国习惯从周一开始结果直接用strtotime("last monday") 就会的出错误的结果为了解决这个问题。代码如下$date = date("Y-m-d"); //当前日期$first=1;... //获取当前周的第几天 周...
  • 获取指定某年某一周的起止日期 获取当前月份第一天日期 获取当前月份最后一天日期 获取指定年份月份的起止日期 获取现在是今年的第几个季度 获取当前季度的第一天日期 获取当前季度的最后一天日期 获取指定季度的...
  • 1、本周的起止时间,这个在网上搜,有很多,但大多都是不对的,代码程序毕竟是外国人研发出来的,按外国人的习惯,周日算下一周的开始,网上搜出来的大多是这样的,没有按国人的统计方式肯定不行的,所以就要做下...
  • 这篇文章主要介绍了php获取本周开始日期和结束日期方法,实例分析了php操作日期技巧,具有一定参考借鉴价值,需要朋友可以参考下本文实例讲述了php获取本周开始日期和结束日期方法。分享给大家供大家参考。具体...
  • 1、本周的起止时间,这个在网上搜,有很多,但大多都是不对的,代码程序毕竟是外国人研发出来的,按外国人的习惯,周日算下一周的开始,网上搜出来的大多是这样的,没有按国人的统计方式肯定不行的,所以就要做下...
  • 1、本周的起止时间,这个在网上搜,有很多,但大多都是不对的,代码程序毕竟是外国人研发出来的,按外国人的习惯,周日算下一周的开始,网上搜出来的大多是这样的,没有按国人的统计方式肯定不行的,所以就要做下...
  • 年中,前几月中,前几周中的每周起止时间 -- coding: utf-8 -- import datetime import time from datetime import timedelta current = datetime.datetime.now() 最近两个月的每周起止时间 当前周前m周到后n周的...
  • 1、本周的起止时间,这个在网上搜,有很多,但大多都是不对的,代码程序毕竟是外国人研发出来的,按外国人的习惯,周日算下一周的开始,网上搜出来的大多是这样的,没有按国人的统计方式肯定不行的,所以就要做下...
  • 1、本周的起止时间,这个在网上搜,有很多,但大多都是不对的,代码程序毕竟是外国人研发出来的,按外国人的习惯,周日算下一周的开始,网上搜出来的大多是这样的,没有按国人的统计方式肯定不行的,所以就要做下...
  • 本文推荐给大家个php类文件,可以根据指定日期获取所在周的起始时间和结束时间,并附上使用实例,有需要的小伙伴参考下吧
  • Java8 获取当天、本周、本月、本季度、本年度起止时间、返回 LocalDateTime 格式的起止时间二、返回 String 格式的起止时间 、返回 LocalDateTime 格式的起止时间 /** * @Description:返回 LocalDateTime 格式...
  • 1、补全给定起止时间区间内所有日期 /** * 补全给定起止时间区间内所有日期 * @param startTime * @param endTime * @param isIncludeStartTime * @return */ public static List<String> ...
  • 如果月份从星期日开始-忽略该天2013年1月第一周-2012年12月31日至2013年1月6日第二周-2013年1月7日至2013年1月13日第三周-2013年1月14日至2013年1月20日第四周-21日-2013至2013年1月27日第五周-2013...
  • php实现周和月起止时间计算方法当前周的起止时间计算public function getWeekend(){ $date=date("Y-m-d"); //当前日期 $first=1; //$first =1 表示每周星期为开始日期 0表示每周日为开始日期 $w=date...
  • 计算指定格式日期的当前周和前后周的起止时间入参:date类型,或者当前系统时间返回:当前时间的所在周的起止日期,和前后一周的起止日期/*** 此方法为:根据当前日期获得所在周的日期区间(周一和周日日期)* 入参: 时间...
  • /// /// 本周起止时间/// /// /// private string weekrange(System.DateTime dt){int weeknow = Convert.ToInt32(dt.DayOfWeek);int daydiff = (-1) * weeknow;int dayadd = 6-weeknow;string datebegin = System....
  • 因为项目开发中遇到需要向后台传本周的开始和结束时间,以及上一周的起止时间,就琢磨了半天,总算写出来一套,写篇文章是为了方便自己记忆,也是分享给需要的人,水平有限,写的不好请见谅: 1、getDateStr3函数是...
  • 因为项目开发中遇到需要向后台传本周的开始和结束时间,以及上一周的起止时间,就琢磨了半天,总算写出来一套,写篇文章是为了方便自己记忆,也是分享给需要的人,水平有限,写的不好请见谅: getDateStr3函数...
  • CREATE OR REPLACE FUNCTION get_weekly_times(i_ksrq IN DATE, i_jsrq IN DATE) RETURN NUMBER DETERMINISTIC ... * 每一周:周一到周日 * * 给函数加上determninistic,在SQL执行期间,对于相同输入参数,函...

空空如也

空空如也

1 2
收藏数 39
精华内容 15
关键字:

获取一周的起止时间