php根据当前日期判断法定节假日_判断日期是否为法定节假日的API接口与示例函数...
需要判定某日期是否為法定節假日,由于國家的節假日每年都在變動,所以使用接口判定是必要的。可惜的是,這樣的接口并不多,在此匯總三個:
前兩個看起來是個人的,最后一個是聚合數據的萬年歷接口。
請注意,本文中代碼謹慎使用。發現前兩個個人接口經常改動,第一個接口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个机顶盒2