psr/clock
PSR-20 Clock interface for PHP. Defines ClockInterface::now() returning DateTimeImmutable, enabling dependency injection of time sources and easy testing. This package provides only the interface; use or create an implementation.
|
Package
|
Score
|
Description
|
Stars
|
Likes
|
Forks
|
Downloads
|
Issues
|
Score
|
Opportunity
|
License
|
Last Release
|
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| lcobucci/clock | 0.83 | PSR-20 clock implementation for PHP. Provides a simple, testable way to access the current time with interchangeable clocks like system and frozen clocks, making time-dependent code predictable and easy to unit test. | 790 | 792 | 32 | 5M | 1 | 30.3 | 61.8 | MIT | 5 months ago | |
| symfony/clock | 0.82 | Symfony Clock decouples your app from the system clock. Inject ClockInterface to get deterministic time via now() and control behavior like sleep() and time zones. Ideal for testable, time-sensitive code without relying on global time functions. | 430 | 432 | 3 | 10M | 0 | 31.8 | 65.0 | MIT | 1 week ago | |
| eventsauce/clock | 0.81 | Simple clock abstraction for PHP. Use SystemClock in production and TestClock in tests to control time deterministically. Get now() as DateTimeImmutable, access timeZone(), move time forward, tick to system time, or fixate to a specific moment. | 3 | 3 | 2 | 38K | 0 | 0.1 | 55.0 | — | — | |
| sanmai/duoclock | 0.81 | PSR-20 clock abstraction with dual time access (DateTimeImmutable, time(), microtime()) plus mockable sleep/usleep/nanosleep for testing. Includes deterministic TimeSpy and tick helpers to measure elapsed time. Minimal dependency (psr/clock) and easy to mock. | 3 | 3 | 1 | 768K | 0 | 21.3 | 65.0 | Apache-2.0 | 3 months ago | |
| beste/clock | 0.79 | beste/clock is a lightweight PHP clock implementation for time-dependent code. It provides a simple, test-friendly way to obtain the current time, swap in fixed or mock clocks, and improve determinism across your application and automated tests. | 74 | 74 | 1 | 1M | 0 | 22.5 | 65.0 | MIT | 3 years ago | |
| psr/http-message | 0.73 | PSR-7 HTTP message interfaces for PHP (Request/Response, Streams, URIs, UploadedFiles). Defines common contracts only—no concrete implementation. Ideal for framework-agnostic middleware and libraries needing interoperable HTTP message types. | 7,097 | 7,212 | 187 | 17M | 0 | 57.7 | 64.3 | MIT | 2 years ago | |
| psr/link | 0.72 | PSR-13 link definition interfaces for PHP. Provides standard LinkInterface and LinkProviderInterface contracts used to describe and expose web links. Not an implementation—interfaces only; use a compatible psr/link-implementation package. | 2,502 | 2,513 | 13 | 3M | 0 | 12.9 | 42.0 | MIT | — | |
| psr/container | 0.72 | The PSR-11 Container Interface defines core abstractions for dependency injection in PHP. It’s a standard abstraction, not an implementation—used by DI containers like Laravel’s Illuminate\Container. Essential for dependency management, ensuring interoperability across container implementations. | 10,015 | 10,054 | 51 | 16M | 4 | 49.8 | 53.9 | MIT | 4 years ago | |
| psr/http-factory | 0.72 | PSR-17 HTTP message factory interfaces for creating requests, responses, streams, URIs, and uploaded files. This package provides only the standard interfaces (no implementation). Find compatible implementations on Packagist. | 1,887 | 1,899 | 25 | 16M | 0 | 30.8 | 63.7 | MIT | 1 year ago | |
| psr/http-client | 0.72 | PSR-18 interfaces and common code for HTTP clients in PHP. This package provides the standard abstractions (requests, responses, exceptions) for interoperability, not an actual client implementation. Find compatible implementations on Packagist. | 1,722 | 1,740 | 17 | 15M | 0 | 31.2 | 63.9 | MIT | 2 years ago | |
| psr/log | 0.71 | PSR-3 logging interfaces for PHP. Provides LoggerInterface, traits, and related classes to standardize how libraries accept and emit log messages. Not a logger implementation—use it to type-hint a logger or build your own PSR-3 compliant logger. | 10,445 | 10,629 | 187 | 17M | 0 | 54.3 | 52.0 | MIT | 1 year ago |
How can I help you explore Laravel packages today?