ivan-berger / server-timezone
There is no license information available for the latest version (1.0.0) of this package.
Get server time based on IP timezone
1.0.0
2025-03-19 17:50 UTC
Requires
- php: ^8.4
- ext-curl: *
Requires (Dev)
- mockery/mockery: ^1.6
- pestphp/pest: ^3.7
- pestphp/pest-plugin: ^3.0
README
This is a test project to retrieve the server's current time based on the provided IP address.
Description
The project includes a ServerTimeZone
class that provides functionality to get the current server time using the IP address. It uses an external time API to fetch the current time and timezone information.
Installation
- Clone the repository:
git clone https://github.com/rchitector/ServerTimeZone.git
- Navigate to the project directory:
cd ServerTimeZone
- Install the dependencies using Composer:
composer install
Usage
To get the current server time based on the provided IP address, you can use the ServerTimeZone
class:
use IvanBerger\ServerTimeZone\IPProvider; use IvanBerger\ServerTimeZone\TimeServiceException; use IvanBerger\ServerTimeZone\ServerTimeZone; try { $ipProvider = new IPProvider(); $ip = $ipProvider->detectIP(); echo 'Current IP detected: ' . $ip . PHP_EOL; $serverTime = new ServerTimeZone($ip); $cdt = $serverTime->getCurrentDateTime(); echo 'Current server time detected: ' . $cdt->format('Y-m-d H:i:s P'); } catch (TimeServiceException $e) { echo 'Error: '.$e->getMessage(); }