🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano
CallbackClock — reloj basado en una clausura
Propósito
La fuente del momento es una clausura arbitraria: un puente hacia fuentes de tiempo no estándar (servicio externo, generador de escenarios).
Para qué y cómo usarlo
Integración con una API de tiempo ajena o con una lógica compleja de entrega de momentos sin escribir tu propia clase de reloj.
Ejemplo
$clock = new CallbackClock(
fn (): DateTimeImmutable => $externalTimeService->current(),
'UTC',
);
Antipatrones
La clausura debe ser rápida y sin efectos secundarios — se ejecuta en cada lectura.
Ciclo de vida
flowchart LR
A[Closure] -->|DateTimeImmutable| B[CallbackClock]
B --> C[ClockInterface consumers]
Comparación de la característica con alternativas
| Aspecto | 🏆 CloudCastle | symfony | carbon | lcobucci | beste | ergebnis |
|---|---|---|---|---|---|---|
| Fuente arbitraria del momento | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Zona horaria declarada | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Contrato de reloj completo del paquete | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Clausura en lugar de herencia | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Total | 🏆 4 | 0 | 0 | 0 | 0 | 0 |
← Volver a la lista de características
🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano