🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano
CallbackClock — orologio su closure
Scopo
La sorgente del momento è una closure arbitraria: un ponte verso sorgenti di tempo non standard (servizio esterno, generatore di scenari).
A cosa serve e come usarlo
Integrazione con un'API di tempo di terze parti o con una logica complessa di erogazione dei momenti senza scrivere una propria classe di orologio.
Esempio
$clock = new CallbackClock(
fn (): DateTimeImmutable => $externalTimeService->current(),
'UTC',
);
Anti-pattern
La closure deve essere veloce e priva di effetti collaterali — viene invocata a ogni lettura.
Ciclo di vita
flowchart LR
A[Closure] -->|DateTimeImmutable| B[CallbackClock]
B --> C[ClockInterface consumers]
Confronto della funzionalità con gli analoghi
| Aspetto | 🏆 CloudCastle | symfony | carbon | lcobucci | beste | ergebnis |
|---|---|---|---|---|---|---|
| Sorgente del momento arbitraria | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Fuso orario dichiarato | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Contratto completo dell'orologio del pacchetto | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Closure al posto dell'ereditarietà | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Totale | 🏆 4 | 0 | 0 | 0 | 0 | 0 |
← Torna all'elenco delle funzionalità
🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano