|  | před 1 rokem | |
|---|---|---|
| .. | ||
| src | před 1 rokem | |
| CHANGELOG.md | před 1 rokem | |
| LICENSE | před 1 rokem | |
| README.md | před 1 rokem | |
| composer.json | před 1 rokem | |
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.
composer require psr/clock
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.jsons provides-section like this:
{
  "provides": {
    "psr/clock-implementation": "1.0"
  }
}
And please read the specification text for details on the interface.