cache/doctrine-adapter
PSR-6 cache pool adapter backed by Doctrine Cache. Wraps Doctrine cache drivers (e.g., MemcachedCache) in a standards-compliant PSR-6 CacheItemPool for easy integration with php-cache features like tagging and hierarchy support.
Illuminate\Cache\Repository).MemcachedCache, RedisCache) to avoid duplicating caching logic or building custom adapters.MemcachedCache, RedisCache) and needs PSR-6 compatibility for Laravel or other PSR-6-compliant services.User#123 or Product#456) to improve performance in read-heavy workloads.Model::save()).redis, memcached) or other PSR-6 adapters like php-cache/psr6-adapters.symfony/cache or predis/predis directly.stash/stash.Cache::store() extensions). Test compatibility thoroughly.For Executives: "This package allows us to standardize caching across our PHP services using PSR-6, reducing technical debt and improving performance. By bridging Doctrine’s existing caching infrastructure—already used in our ORM—to PSR-6, we eliminate the need to build custom solutions and enable precise cache invalidation for high-traffic APIs. It’s a lightweight, MIT-licensed tool that aligns with our long-term architecture goals, with minimal risk. This will streamline maintenance, improve scalability, and reduce costs associated with reinventing caching logic."
For Engineering: *"This adapter lets us use Doctrine’s Memcached/Redis caches with PSR-6, which is ideal for:
User#123 after updates).model:123) may need preprocessing to avoid restricted characters ({}()/@:).Cache::tags(); test invalidation consistency.memcached) in staging, then expand if successful."*For Developers:
*"If you’re already using Doctrine’s cache layer (e.g., MemcachedCache) and want to use it with Laravel’s PSR-6 cache system, this package is a no-brainer. It:
Cache facade and middleware.Cache::tags(['users'])->put() will invalidate correctly.{} in cache keys).doctrine/dbal).
Try it in a feature branch first!"*How can I help you explore Laravel packages today?