san103 / php-holiday-api
PHP的假日API
v1.3.9
2024-04-04 00:33 UTC
Requires
- guzzlehttp/guzzle: ^7.2
README
基于 Google Calendar API
的Php/Laravel动态假日包
composer require san103/php-holiday-api
先决条件
- PHP 8.0 或更高版本
- Composer
- Guzzlehttp/guzzle"
安装
composer install
composer require guzzlehttp/guzzle:^7.0
基本用法
定义包
namespace App/YourApp
use San103\Phpholidayapi\HolidayClient;
$holiday = new HolidayClient();
- (可选) 设置您的国家代码,例如uk代表联合王国,us代表美国
默认设置为菲律宾
countryCode('uk')
- (可选) 设置您想显示假日日期的年份,
默认设置为当前年份2023
year('2022')
重要
在最后链中必须定义
result()
result();
- PHP中的示例用法
require 'vendor/autoload.php';
use San103\Phpholidayapi\HolidayClient;
public function index(){
$api = new HolidayClient();
return $api
->countryCode('uk')
->year('2023')
->result();
}
- Laravel 10中的示例用法
use San103\Phpholidayapi\HolidayClientLaravel;
public function index(){
$api = new HolidayClientLaravel();
return $api
->countryCode('uk')
->year('2023')
->result();
}
Laravel 10的特殊功能
- 安装缓存
- 使用HolidayClientLaravel源
return Cache::remember(date('Y'), now()->addMonth(), function () use ($http) {
将now()->addMonth()
更改为设置缓存的过期时间
注意
您还可以从Google API 提供您自己的API密钥。只需启用日历API并生成密钥
apiKey('your-api-key')
输出
"
{
"21":{
"id":"20230101_i536",
"title":"New Year\'s Day",
"description":"Public holiday",
"date":{"date":"2023-01-01"}},
"23":{
"id":"20230225_qh5n",
"title":"People Power Anniversary",
"description":"Public holiday",
"date":{"date":"2023-02-25"}},
"24":{
"id":"20230406_hvi",
"title":"Maundy Thursday",
"description":"Public holiday",
"date":{"date":"2023-04-06"}},
"25":{
"id":"20230407_fv",
"title":"Good Friday",
"description":"Public holiday",
"date":{"date":"2023-04-07"}},
"26":{
"id":"20230408_6v",
"title":"Black Saturday",
"description":"Public holiday",
"date":{"date":"2023-04-08"}},
"28":{
"id":"20230501_on",
"title":"Labor Day",
"description":"Public holiday",
"date":{"date":"2023-05-01"}},
"29":{
"id":"20230612_kq",
"title":"Independence Day",
"description":"Public holiday",
"date":{"date":"2023-06-12"}},
"30":{
"id":"20230821_p0c",
"title":"Ninoy Aquino Day",
"description":"Public holiday",
"date":{"date":"2023-08-21"}},
...
"
重要
如果您觉得这个包有用,请给我们一个星标!谢谢并愿上帝保佑
许可
该软件包是开源软件,根据MIT许可授权。