https://github.com/islamic-network/prayer-times
An Islamic Prayer Times Library written in PHP. It performs the core calculations for the AlAdhan API @ https://aladhan.com.
https://github.com/islamic-network/prayer-times
islam islamic-prayer-times php-library prayer-times
Last synced: over 1 year ago
JSON representation
An Islamic Prayer Times Library written in PHP. It performs the core calculations for the AlAdhan API @ https://aladhan.com.
- Host: GitHub
- URL: https://github.com/islamic-network/prayer-times
- Owner: islamic-network
- License: lgpl-3.0
- Created: 2019-06-28T10:58:21.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-31T14:39:22.000Z (about 2 years ago)
- Last Synced: 2025-03-24T03:10:31.552Z (over 1 year ago)
- Topics: islam, islamic-prayer-times, php-library, prayer-times
- Language: PHP
- Homepage: https://islamic.network
- Size: 90.8 KB
- Stars: 77
- Watchers: 8
- Forks: 28
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
[](https://cairo.mamluk.net/teams/islamic-network/pipelines/prayer-times)
[](https://github.com/islamic-network/prayer-times/releases)

# This repository is no longer active. Please see https://community.islamic.network/d/140-removing-repositories-from-github.
## Prayer Times Library (PHP)
This is a PHP edition of the Prayer Times Library (v2.3) originally written in JavaScript by Hamid Zarrabi-Zadeh of PrayTimes.org and available on http://praytimes.org/code/v2/js/PrayTimes.js. It has divulged much from the original since it was first written, so please don't use it as a 'like for like' substitute - the method names, among other things, are different.
## How to Use this Library
The library is a composer package, so to install it, run:
```
composer require islamic-network/prayer-times
```
Using it is rather simple:
```php
getTimesForToday($latitude, $longitude, $timezone, $elevation = null, $latitudeAdjustmentMethod = self::LATITUDE_ADJUSTMENT_METHOD_ANGLE, $midnightMode = self::MIDNIGHT_MODE_STANDARD, $format = self::TIME_FORMAT_24H);
// Or, if you want times for another day
$times = $pt->getTimes(DateTime $date, $latitude, $longitude, $elevation = null, $latitudeAdjustmentMethod = self::LATITUDE_ADJUSTMENT_METHOD_ANGLE, $midnightMode = self::MIDNIGHT_MODE_STANDARD, $format = self::TIME_FORMAT_24H);
//If you would like to offset the time for each result by a particular number of minutes, simply call the tune method before calling getTimes or getTimesForToday.
$pt->tune($imsak = 0, $fajr= 0, $sunrise = 0, $dhuhr = 0, $asr = 0, $maghrib = 0, $sunset = 0, $isha = 0, $midnight = 0);
// Finally, you can also create your own methods:
$method = new Method('My Custom Method');
$method->setFajrAngle(18);
$method->setMaghribAngleOrMins(19.5);
$method->setIshaAngleOrMins('90 min');
// And then:
$pt = new PrayerTimes(PrayerTimes::METHOD_CUSTOM);
$pt->setCustomMethod($method);
// And then the same as before:
$times = $pt->getTimesForToday($latitude, $longitude, $timezone, $elevation = null, $latitudeAdjustmentMethod = self::LATITUDE_ADJUSTMENT_METHOD_ANGLE, $midnightMode = self::MIDNIGHT_MODE_STANDARD, $format = self::TIME_FORMAT_24H);
```
## Methods
Supported methods can be seen @ https://github.com/islamic-network/prayer-times/blob/master/src/PrayerTimes/Method.php#L10.
### Understanding Methods
For a discussion on methods, see https://aladhan.com/calculation-methods.
## Tests
Compare the results produced by this library against the original JS version.
## Contributors
Hamid Zarrabi-Zadeh, Meezaan-ud-Din Abdu Dhil-Jalali Wal-Ikram
## License
Same as the original - License: GNU LGPL v3.0, which effectively means:
```
Permission is granted to use this code, with or without modification, in any website or application provided that credit is given to the original work with a link back to PrayTimes.org.
```