v.0.1
This commit is contained in:
61
vendor/psr/clock/README.md
vendored
Normal file
61
vendor/psr/clock/README.md
vendored
Normal file
@ -0,0 +1,61 @@
|
||||
# PSR Clock
|
||||
|
||||
This repository holds the interface for [PSR-20][psr-url].
|
||||
|
||||
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
|
||||
|
||||
```bash
|
||||
composer require psr/clock
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
If you need a clock, you can use the interface like this:
|
||||
|
||||
```php
|
||||
<?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][implementation-url] 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 `provides`-section like this:
|
||||
|
||||
```json
|
||||
{
|
||||
"provides": {
|
||||
"psr/clock-implementation": "1.0"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
And please read the [specification text][specification-url] for details on the interface.
|
||||
|
||||
[psr-url]: https://www.php-fig.org/psr/psr-20
|
||||
[package-url]: https://packagist.org/packages/psr/clock
|
||||
[implementation-url]: https://packagist.org/providers/psr/clock-implementation
|
||||
[specification-url]: https://github.com/php-fig/fig-standards/blob/master/proposed/clock.md
|
Reference in New Issue
Block a user