jhonoryza / laravel-prayertime
1.1.2
2024-07-15 14:44 UTC
Requires
- php: ^8.2
- geniusts/prayer-times: ^1.0
- guzzlehttp/guzzle: ^7.8
- illuminate/support: ^10.0
- islamic-network/prayer-times: ^1.0
- symfony/dom-crawler: ^7.0
Requires (Dev)
- laravel/pint: ^1.14
- orchestra/testbench: ^8.18
README
安装
composer require jhonoryza/laravel-prayertime
运行迁移
php artisan migrate
这将创建3个表格:省份、城市和祷告时间表
发布配置文件
php artisan vendor:publish --tag=prayertime-config
来源
您可以通过配置配置文件 prayertime.php
从以下来源中选择一个
-
手动计算:参考自 prayertimes.org
-
爬取 bimasislam kemenag 网站 https://bimasislam.kemenag.go.id/jadwalshalat
-
myquran.com 的 API(之前域名 https://api.banghasan.com/)
同步预定义的城市和省份数据
从来源获取城市数据并将其保存到数据库中
php artisan pray:sync-city
同步祷告时间
从来源获取祷告时间并将其保存到数据库中
php artisan pray:sync-times
通用用法
public function getPrayerTimes(string $provinceId, string $cityId, int $month, int $year): array
示例
<?php Route::get('/time', function (PrayerTime $prayer) { $prayerTimes = $prayer->getPrayerTimes( provinceId: '', // Kab Bandung province external id for manual calculation or when using kemenag use this c20ad4d76fe97759aa27a0c99bff6710 cityId: '3204', // Kab Bandung external id for manual calculation or when using kemenag use this 0777d5c17d4066b82ab86dff8a46af6f month: 6, year: 2024 ); foreach ($prayerTimes as $index => $times) { foreach ($times as $key => $prayerTime) { if (in_array($key, ['city_external_id', 'prayer_at'])) { continue; } $times[$key] = $prayerTime->format('H:i'); } $prayerTimes[$index] = $times; } return response()->json([ 'data' => $prayerTimes, ]); });
手动计算用法
见 手动计算
安全
如果您发现了关于安全性的错误,请通过电子邮件 jardik.oryza@gmail.com 联系,而不是使用问题跟踪器。
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。