https://github.com/chrisharrison/clock
A PHP 7 clock interface.
https://github.com/chrisharrison/clock
clock dependency-injection ioc php php7
Last synced: about 1 year ago
JSON representation
A PHP 7 clock interface.
- Host: GitHub
- URL: https://github.com/chrisharrison/clock
- Owner: chrisharrison
- Created: 2017-08-18T15:42:51.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-12-23T12:11:28.000Z (over 8 years ago)
- Last Synced: 2025-02-28T21:48:13.010Z (over 1 year ago)
- Topics: clock, dependency-injection, ioc, php, php7
- Language: PHP
- Homepage:
- Size: 9.77 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# clock
A PHP 7 clock interface.
[](https://travis-ci.org/chrisharrison/clock)
[](https://packagist.org/packages/chrisharrison/clock)
## Installation ##
Through Composer, obviously:
```
composer require chrisharrison/clock
```
## Examples ##
### Frozen clock (useful for testing) ###
```php
$frozenClock = new \ChrisHarrison\Clock\FrozenClock(new \DateTime('1988-05-01 16:00:00'));
echo $frozenClock->now()->format('Y-m-d H:i:s');
echo $frozenClock->now()->format('Y-m-d H:i:s');
echo $frozenClock->now()->format('Y-m-d H:i:s');
```
Outputs:
```
1988-05-01 16:00:00
1988-05-01 16:00:00
1988-05-01 16:00:00
```
### System clock (has a hard dependency on the underlying operating system's clock) ###
```php
$systemClock = new \ChrisHarrison\Clock\SystemClock;
echo $systemClock->now()->format('Y-m-d H:i:s');
echo $systemClock->now()->format('Y-m-d H:i:s');
echo $systemClock->now()->format('Y-m-d H:i:s');
```
Outputs:
```
2017-10-01 20:43:22
2017-10-01 20:43:23
2017-10-01 20:43:24
```