🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano
CallbackClock — horloge à rappel
Objectif
La source de l’instant est une fermeture arbitraire : un pont vers des sources de temps non standard (service externe, générateur de scénario).
À quoi ça sert et comment l’utiliser
Intégrer une API de temps tierce ou une logique complexe de production d’instants sans écrire sa propre classe d’horloge.
Exemple
$clock = new CallbackClock(
fn (): DateTimeImmutable => $externalTimeService->current(),
'UTC',
);
Anti-modèles
La fermeture doit être rapide et sans effet de bord — elle est appelée à chaque lecture.
Cycle de vie
flowchart LR
A[Closure] -->|DateTimeImmutable| B[CallbackClock]
B --> C[ClockInterface consumers]
Comparaison des fonctionnalités avec les concurrents
| Aspect | 🏆 CloudCastle | symfony | carbon | lcobucci | beste | ergebnis |
|---|---|---|---|---|---|---|
| Source d’instant arbitraire | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Fuseau horaire déclaré | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Contrat d’horloge complet du paquet | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Fermeture au lieu de l’héritage | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Total | 🏆 4 | 0 | 0 | 0 | 0 | 0 |
← Retour à la liste des fonctionnalités
🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano