php獲取一段時間內的法定工作日

2021-09-29 06:06:08 字數 1908 閱讀 8386

首先,需要自己在後台建立乙個表 content_cooper

這個結構如下:

create table `my_content_cooper` (

`id` int(11) unsigned not null auto_increment comment '節假日記錄表id',

`year` tinyint(3) not null default '1' comment '年份',

`name` tinyint(3) not null default '1' comment '節假日名稱',

`start_date` varchar(10) not null default '2020-01-01' comment '開始日期',

`day_num` int(3) not null default '3' comment '放假時長(天數)',

`need_date` varchar(255) default null comment '補班調休日期集合',

`addtime` timestamp null default current_timestamp,

`status` tinyint(3) default '1',

primary key (`id`)

) engine=myisam auto_increment=3 default charset=utf8;

-- ----------------------------

-- records of my_content_cooper

-- ----------------------------

insert into `my_content_cooper` values ('1', '1', '7', '2019-10-01', '7', '[\"2019-09-28\",\"2019-10-12\"]', '2019-10-21 22:12:23', '1');

insert into `my_content_cooper` values ('2', '2', '1', '2020-01-01', '1', '[\"\"]', '2019-10-21 22:15:59', '1');

建立表並寫入了兩條資料,

//計算法定節假日的日期和補班的日期

function get_legal_days($start_date, $end_date)

$now_start_date = $v['start_date'];

//迴圈放假天數

if($v['day_num'] > 1)}}

//計算補班的日期列表

$need_date = json_decode($v['need_date'],true);

foreach($need_date as $k1=>$v1)

}} return $holiday;//節假日

} function get_legal_week_days($start_date, $end_date)

}} return $weekday;//上班列表

}/* 計算一段時間內的除去節假日的工作日列表 */

function get_work_days($start_date, $end_date)

$start_time += 86400;

} //在加上需要補的法定節假日的調休

$get_legal_days = get_legal_week_days($start_date_old, $end_date);//法定節假日的調休日期

$data = array_values ( array_unique( array_merge($data , $get_legal_days) ) );

sort($data);

return $data;

}

JS 獲取一段時間內的工作時長小時數

本來想是想找輪子的,但是並沒有找到能用的,多數都是問題很大,所以就自己寫了乙個 支援自選時間段,即開始時間與結束時間 根據使用者的上班及下班時間判定 返回小時數 moment.js 怎麼說呢,其實這個邏輯不是很複雜 主要是確定起始時間 結束時間與打卡上班時間 打卡下班時間的關係問題 起始時間 上班時...

linux ted查詢一段時間內日誌

結論 所要查詢的起始時間 和 結束時間必須在日誌檔案中有相等的時間,否則 case 1 若起始時間沒有相等,則查詢無效。case 2,若結束時間沒有相等,而起始時間有相等,則查詢結果會從起始時間一直到日誌檔案結束。日誌檔案 logdemo1.log 內容如下 2021 01 03 10 46 00,...

PHP 獲取指定一段時間內的每天的開始時間

獲取指定一段時間內的每天的開始時間 param startdate 開始日期 param enddate 結束日期 param format 時間格式 0 時間戳 1日期格式 return array 返回一維陣列 function periodtime startdate,enddate,form...