You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
6 days ago | |
---|---|---|
docs | 6 days ago | |
src | 6 days ago | |
tests | 2 months ago | |
.gitattributes | 3 months ago | |
.gitignore | 3 months ago | |
.gitlab-ci.yml | 3 months ago | |
CHANGELOG.md | 6 days ago | |
LICENSE.md | 3 months ago | |
README.md | 6 days ago | |
composer.json | 6 days ago | |
phpcs.xml | 3 months ago | |
phpunit.xml | 6 days ago | |
psalm.xml | 3 months ago |
README.md
Clock
A collection of clock abstraction classes for PSR-20.
Installation
composer require arokettu/clock
Supported versions:
- 1.x (LTS-ish, PHP 7.0+)
- 2.x (current, PHP 8.0+)
Example
<?php
$clock = new \Arokettu\Clock\SystemClock();
$clockPsrAwareValidator->isValid($clock);
For a specific example, lcobucci/jwt
:
<?php
use Arokettu\Clock\SystemClock;
use Lcobucci\JWT\Configuration;
use Lcobucci\JWT\Signer\Hmac\Sha256;
$cfg = Configuration::forSymmetricSigner(new Sha256(), '...');
$token = $cfg->parser()->parse('...');
$cfg->validator()->assert(
$token,
new StrictValidAt(new SystemClock())
);
Documentation
Available clock classes:
- SystemClock. Plain class that returns operating system clock, also available as a separate package: arokettu/system-clock
- ShiftedClock. System clock + fixed interval
- StaticClock. Clock that returns a single set value
- MutableClock. Based on mutable DateTime class
- TickingClock. Clock that advances an interval every call
- CallbackClock. A wrapper for a closure that also supports generator closures
Read full documentation here: https://sandfox.dev/php/clock.html
Also on Read the Docs: https://arokettu-clock.readthedocs.io/
Support
Please file issues on our main repo at GitLab: https://gitlab.com/sandfox/php-clock/-/issues
License
The library is available as open source under the terms of the MIT License.