Download the PHP package laragear/cache-refresh without Composer
On this page you can find all versions of the php package laragear/cache-refresh. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package cache-refresh
This package has been superseded by Laravel Cache Atomic Lock.
Cache Refresh
Refresh items in your cache without data races.
Become a sponsor
Your support allows me to keep this package free, up-to-date and maintainable. Alternatively, you can spread the word!
Requirements
- Laravel 10 or later
- Cache Driver with Lock support (*).
[!WARNING]
You can still use Cache Refresh without a driver that supports locking, but bear in mind, refreshing won't be atomic.
Installation
You can install the package via Composer:
Usage
Cache Refresh will retrieve a key value from your cache store that you can edit using a callback. This callback is free to change the value and return it to be persisted.
When the cached value doesn't exist, like when is first called, you will receive null
, so remember to un-null the value when is first called.
Custom Expiration time
The callback also receives an Expire
instance, which will allow you to change the expiration time of the key inside the callback.
Custom Lock configuration
You can omit a callback to manage the lock time and the waiting time using lock()
and waitFor()
, respectively, and issue the callback using put()
.
PhpStorm stubs
For users of PhpStorm, there is a stub file to aid in macro autocompletion for this package. You can publish them using the phpstorm
tag:
The file gets published into the .stubs
folder of your project. You should point your PhpStorm to these stubs.
Laravel Octane compatibility
- There are no singletons using a stale application instance.
- There are no singletons using a stale config instance.
- There are no singletons using a stale request instance.
There should be no problems using this package with Laravel Octane.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
License
This specific package version is licensed under the terms of the MIT License, at time of publishing.
Laravel is a Trademark of Taylor Otwell. Copyright © 2011-2024 Laravel LLC.
All versions of cache-refresh with dependencies
illuminate/cache Version 10.*|11.*
illuminate/contracts Version 10.*|11.*
illuminate/support Version 10.*|11.*