sopheos / pebble_cache
Cache library
1.0.1
2024-09-04 08:12 UTC
Requires
- php: >=8.1.0
- psr/simple-cache: ^3.0
Requires (Dev)
- phpunit/phpunit: ^9.5
README
Système de de mise en cache.
CacheInterface
start(): static
Démarre le serviceclose(): static
Stop le serviceset(string $key, $value, int $expiration = 0): static
Ajoute une donnée.setMulti(array $items, int $expiration = 0): static
Ajoute un ensemble de données.delete(string $key): static
Supprime une donnée.get(string $key): mixed
Récupère une donnéegetMulti(array $keys): array
Récupère un ensemble de données.increment(string $key, int $expiration = 0, int $offset = 1): static
: Incrémente une valeur. (Vaut$offset
si n'existe pas.)decrement(string $key, int $expiration = 0, int $offset = 1): static
: Décrémente une valeur. (Vaut- $offset
si n'existe pas.)
MemCache
- Implémente
CacheInterface
. - Se connecte à un serveur Memcached.
MicroCache
- Implémente
CacheInterface
. - Conserve les données en cache uniquement le temps de l'execution du script.
- L'expiration des méthodes n'a pas d'effet.
SessionHandler
- Implémente
SessionHandlerInterface
. - Permet de stocker les sessions dans un
CacheInterface
.
RateLimit
Antispam qui stocke les tentatives dans un CacheInterface
.
Utilise le principe de Token bucket : https://en.wikipedia.org/wiki/Token_bucket
__construct(CacheInterface $cache, string $name, int $max, int $period)
Crée unRateLimit
:$name
: Nom$max
: Stock initial$period
: Période en secondes avant réinitialisation partiel du stock
hit(int $use = 1): bool
: Consomme$use
éléments du stock et vérifie que le stock est toujours plein.stock(): int
Récupère le stock courant.purge()
Réinitialise le stock.