christianswift/holiday-or-workday

这是一个基于免费接口获取数据并处理数据,以便方便判断中国的工 作日的工具,修改自liujia/holiday-or-workday。

dev-master 2021-08-03 04:17 UTC

This package is not auto-updated.

Last update: 2024-09-25 17:18:12 UTC


README

这是一个基于免费接口获取数据并处理数据,以便方便判断中国的工 作日的工具。在正常情况下,执行一次,可以获取某一年的所有数据,缓存之后直接调用判断即可。2017-09-06

更新

2017-12-04

  • 修复了一个非当前年的错误判断条件

2017-09-07

  • 减少了已经循环已经处理过的节日
  • 区分了多个假日和单个假日数据格式不同
  • 通过判断日期,增加了未获取到数据的年份重新获取数据的触发

使用

可以通过composer安装

composer require liujia/holiday-or-workday

可以通过传入例如2017-09-072017-9-7格式的日期,返回对应日期的假日状态

array(
	'status' => 1,
)

这里定义的status的值,工作日为1,休息日为2(加班2倍工资),节假日为3(加班应该是3倍工资),方便计算O(∩_∩)O。

处理

  • 通过聚合数据的最近假日来逐月获取假日信息
  • 将获取的数据进行自定义处理,并“缓存”起来
  • 之后的判断直接使用

其他

  • 使用接口需要注册聚合数据的账号,并申请对应的数据;在工具中需要填入对应的appkey

  • 组装的数据可以存放到任何文件或任何存储中,本例为了使用方便,直接存到php文件中,最好放到缓存中

  • 文件是按年份存储的

  • 组装的数据格式

<?php
 return array (
  '2016-12-31' => 
  array (
    'status' => 3,
  ),
  '2017-1-1' => 
  array (
    'status' => 3,
  ),

  ...

 ?>