需要判定某日期是否为法定节假日,由于国家的节假日每年都在变动,所以使用接口判定是必要的。可惜的是,这样的接口并不多,在此汇总三个:

前两个看起来是个人的,最后一个是聚合数据的万年历接口。

请注意,本文中代码谨慎使用。发现前两个个人接口经常改动,第一个接口2019年8月突然改动造成函数失效。本文不再维护,仅供参考。

在我的小项目中使用了前两个。感觉个人的搭建可能不会太稳定,但是聚合的api我看限制越来越多,每天只能进行100次调用。

附送一段小项目中的代码,使用curl获取前两项接口和Thinkphp5的缓存机制,判断当前日期是否为节假日的函数。

function isHoliday()

{

$today = date('Ymd');

if (cache($today) !== false) {

return cache($today);

} else {

$api1 = juhecurl('https://tool.bitefu.net/jiari/?d='.$today);

if (is_numeric($api1)) {

cache($today, $api1, 86400);

return cache($today);

} else {

$api2 = json_decode(juhecurl('https://www.easybots.cn/api/holiday.php?d='.$today));

if (is_numeric($api2)) {

cache($today, $api2->$today, 86400);

return cache($today);

} else {

return -1;

}

}

}

}

以上代码中cache()缓存助手函数是thinkphp5自带,juhecurl()是一段curl访问函数,仅供参考,不能直接转移到其他项目中。

由于两个接口的返回结果是较为统一的,工作日为0,休息日1,节假日2。所以没有做详细判断,都取不到结果则返回-1。

由于两个接口都不像太规范,建议在使用的时候,先看一下是否还可用。如果能考虑一定预算的话,推荐使用聚合接口稳定点。

php根据当前日期判断法定节假日_判断日期是否为法定节假日的API接口与示例函数...相关推荐

  1. 判断日期是否为法定节假日的API接口与示例函数

    判断日期是否为法定节假日的API接口与示例函数 需要判定某日期是否为法定节假日,由于国家的节假日每年都在变动,所以使用接口判定是必要的.可惜的是,这样的接口并不多,在此汇总三个: http://too ...

  2. 节假日读取接口_判断日期是否为法定节假日的API接口与示例函数

    需要判定某日期是否为法定节假日,由于国家的节假日每年都在变动,所以使用接口判定是必要的.可惜的是,这样的接口并不多,在此汇总三个: 前两个看起来是个人的,最后一个是聚合数据的万年历接口. 在我的小项目 ...

  3. java判断浏览器类型_判断浏览器类型

    一.判断是否为IE 以前判断是否IE浏览器用的是window.navigator.userAgent,跟踪这个信息,发现在开发环境,识别为IE10,但访问服务器则识别为IE11,但IE11的userA ...

  4. 向量积判断优劣弧_判断经验论文优劣的10条诫命

    向量积判断优劣弧 There are a host of pathologies associated with the current peer review system that has bee ...

  5. python判断线程结束_判断Threading.start新线程是否执行完毕的实例

    新写自己的Threading类 class MyThread(threading.Thread):#我的Thread类 判断流程结束没 用于os shell命令是否执行判断 def __init__( ...

  6. java判断颜色合法_判断颜色是否合法的正则表达式(详解)

    判断颜色是否合法的正则表达式(详解) "^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$"; 意思是:以#开头,后面是数字和a-f的字符(大写或小写),这个值是 ...

  7. 用java判断三角形类型_判断三角形类型

    假期无聊,继续九度OJ刷题,每天几道题,强制编程人啊! 三角形判断的方法: 直角三角形:勾股定理 锐角和钝角三角形:余玄定理 题目描述:给定三角形的三条边,a,b,c.判断该三角形类型. 输入:测试数 ...

  8. java 判断基本数据类型_判断(1分) Java语言中的数组元素只能是基本数据类型而不能为对象类型。...

    参考答案如下 判断I'm going to call ___ one of my former classmates 语言元素Imagin - No Carhops - No Waitresses - ...

  9. python判断字符串对称_判断一字符串是否对称,如:abccba

    # 1.判断一字符串是不是对称的,如:abccba def is_symmetrical(str): length = len(str) for index in range(length / 2): ...

最新文章

  1. R语言使用ggplot2包使用geom_violin函数绘制分组小提琴图(配置显示均值、标准偏差)实战
  2. 让Dev-C++运行C++程序的控制台窗口等待查看运行结果
  3. centos 7 配置 到多站点设置
  4. 2019-06-12 学习日记 day33 JDBC
  5. python金融大数据分析视频_Python金融大数据分析 PDF 全书超清版
  6. Python开发工程师常用开发工具
  7. html中span标签w3c,HTML col 标签
  8. 圆角边框(HTML、CSS)
  9. 医院计算机科学与技术笔试试题,医院信息科招收计算机科学与技术专业的笔试试题...
  10. c matlab 引擎调用,将C/C++回调传递给matlab引擎
  11. Android APP功能测试(个人总结完整版)
  12. python制作QQ游戏--大家来找茬游戏辅助(一)
  13. java怎么输出无损高清音乐_MP3转换器如何将无损FLAC音频转换成MP3音乐
  14. 猿创征文|三维重建领域的开发者工具箱
  15. golang http服务的graceful问题
  16. 接口测试用例设计:常见问题和风险
  17. python后端开发的书籍_资深程序员Python学习进阶书籍推荐_后端开发
  18. 1:STM32CubeMX配置STM32F103C8T6驱动-下载软件配置RCC,CAN1,USART1
  19. 为什么机会总是留给有准备的人?这是我听过最好的答案
  20. java通过代理使用redis,redis自动关闭连接,释放资源

热门文章

  1. mysql团队开发工具_最棒的10款MySQL GUI工具
  2. 三维家可以导入别人的方案吗_Candel3D | 山地等高线看着费劲,不如试试三维设计...
  3. CentOS7.9关闭SELinux
  4. Python常见错误及解决方案(持续更新)
  5. mongodb 3.4 安装_暴雨免安装中文版下载
  6. arthas 查看哪个方法调用最耗时_Arthas实战
  7. 对象头、锁的四种状态、Java和处理器实现原子操作的方式(CAS、锁机制;总线锁定、缓存锁定)
  8. TCP/IP / 四次挥手之状态转换图、过程说明和原因
  9. TCP/IP / 状态转换图
  10. 字符串和字符数组的关系