psr / clock
Common interface for reading the clock.
Installs: 157 981 583
Dependents: 187
Suggesters: 0
Security: 0
Stars: 492
Watchers: 12
Forks: 7
Open Issues: 0
Requires
- php: ^7.0 || ^8.0
This package is auto-updated.
Last update: 2024-12-21 17:07:01 UTC
README
This repository holds the interface for PSR-20.
Note that this is not a clock of its own. It is merely an interface that describes a clock. See the specification for more details.
Installation
composer require psr/clock
Usage
If you need a clock, you can use the interface like this:
<?php use Psr\Clock\ClockInterface; class Foo { private ClockInterface $clock; public function __construct(ClockInterface $clock) { $this->clock = $clock; } public function doSomething() { /** @var DateTimeImmutable $currentDateAndTime */ $currentDateAndTime = $this->clock->now(); // do something useful with that information } }
You can then pick one of the implementations of the interface to get a clock.
If you want to implement the interface, you can require this package and
implement Psr\Clock\ClockInterface
in your code.
Don't forget to add psr/clock-implementation
to your composer.json
s provide
-section like this:
{ "provide": { "psr/clock-implementation": "1.0" } }
And please read the specification text for details on the interface.