spatie/sun
Compute sun position times for any coordinates: get sunrise, solar noon (zenith), and sunset as Carbon instances, optionally for a specific date. Simple PHP API from Spatie, ideal for scheduling, dashboards, and daylight-aware features.
This package can determine several things on the position of the sun.
We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.
We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.
You can install the package via composer:
composer require spatie/sun
When instantiating Spatie\Sun\Sun you should pass it coordinates.
$coordinatesOfAntwerp = ['lat' => 51.260197, 'lng' => 4.402771];
$sun = new Sun($coordinatesOfAntwerp['lat'], $coordinatesOfAntwerp['lng']);
You can get the time of the sunrise.
$sun->sunrise(); // returns an instance of \Carbon\Carbon
You can get the time of the sunrise on a specific date by passing in instance of Carbon\Carbon to sunrise
$sun->sunrise($carbon); // returns an instance of \Carbon\Carbon
You can get the time of the zenith.
$sun->zenith(); // returns an instance of \Carbon\Carbon
You can get the time of the zenith on a specific date by passing in instance of Carbon\Carbon to zenith
$sun->zenith($carbon); // returns an instance of \Carbon\Carbon
You can get the time of the sunset.
$sun->sunset(); // returns an instance of \Carbon\Carbon
You can get the time of the sunset on a specific date by passing in instance of Carbon\Carbon to sunset
$sun->sunset($carbon); // returns an instance of \Carbon\Carbon
This is how you can determine if the sun is up:
$sun->sunIsUp(); // returns a boolean
You can get determine if the sun is up at a specific moment by passing in instance of Carbon\Carbon to sunIsUp
$sun->sunIsUp($carbon); // returns a boolean
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
If you've found a bug regarding security please mail security@spatie.be instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.
How can I help you explore Laravel packages today?