einar-hansen / laravel-psr-6-cache
A PHP service that allows you to easily communicate with football-data.org apis using Laravel.
Fund package maintenance!
einar-hansen
Installs: 4 960
Dependents: 3
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 2
Open Issues: 0
Requires
- php: ^8.0
- illuminate/cache: >=5.8
- illuminate/contracts: >=5.8
- psr/cache: ^3.0
Requires (Dev)
- laravel/pint: ^1.0
- pestphp/pest: ^1.21
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
Provides
README
This package adds PSR-6 cache support to Laravel 5.8 and above. Laravel 6 has PSR-6 support build in which can be used through the cache.psr6
container alias. You should install symfony cache if you go down this route.
composer require symfony/cache
Usage
To start using a Psr\Cache\CacheItemPoolInterface
typed implementation that stores data in Laravel's configured cache, add this to a service provider:
use EinarHansen\Cache\CacheItemPool; use Illuminate\Contracts\Cache\Repository; use Psr\Cache\CacheItemPoolInterface; $this->app->singleton(CacheItemPoolInterface::class, function ($app) { return new CacheItemPool($app->make(Repository::class)); });
Right now you're all set to start injecting CacheItemPoolInterface
'd everywhere you need it.
Install
In order to install it via composer you should run this command:
composer require einar-hansen/laravel-psr-6-cache
Testing
# Install packages docker run --rm \ -v $(pwd):/var/www/html \ -w /var/www/html \ laravelsail/php80-composer:latest \ composer install # Run code style formatting and static analysis docker run -it -v $(pwd):/app -w /app php:8.0-alpine vendor/bin/pint src docker run -it -v $(pwd):/app -w /app php:8.0-alpine vendor/bin/phpstan --level=9 analyse
Credits
This package is based on the package madewithlove/illuminate-psr-cache-bridge. It's modified to suit my preferences and is requiring PHP8.0.
About
Einar Hansen is a developer based in Oslo, Norway. You'll find more information about me on my website.
License
The MIT License (MIT). Please see License File for more information.