Download the PHP package mk4u/cache without Composer
On this page you can find all versions of the php package mk4u/cache. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package cache
Mk4U\Cache
A simple and flexible cache system for PHP.
Features
- Support for multiple cache drivers (APCu and files)
- Implementation of the
Psr\SimpleCache\CacheInterface
interface. - Efficient storage and retrieval of data.
[!IMPORTANT] The file driver
Mk4U\Cache\Drivers\File
is suitable for storing small amounts of data in cache. However, as the number of records increases, performance may be affected due to the latency of disk I/O operations.For applications that require storing large volumes of data or high performance, it is recommended to consider using in-memory cache drivers, such as APCu, which are designed to handle large amounts of data more efficiently.
Requirements
- PHP 8.2 or higher
- APCu extension (optional)
Installation
Usage.
Configuration
To use the library, you must first create an instance of the cache driver you want to use. The library includes a Mk4U\Cache\CacheFactory
that makes it easy to create instances of the cache drivers.
[!TIP] If no parameters are passed to the
Mk4U\Cache\CacheFactory::create()
, an object of typeMk4U\Cache\Drivers\File
will be created by default.[!NOTE] By default the
Mk4U\Cache\Drivers\File
object sets the following configuration parameters:
Example of use with the Mk4U\Cache\Drivers\File
driver
[!IMPORTANT] Make sure you set the necessary permissions for the creation of directories and cache files.
Example of use with Mk4U\Cache\Drivers\Apcu
driver
Mk4U\Cache\Drivers\Apcu
has only one configurable parameter and it is ttl
, by default its value is 300 seconds (5 minutes).
Available methods
The cache class implements the following methods of the CacheInterface interface:
get(string $key, mixed $default = null): mixed
set(string $key, mixed $value, null|int|DateInterval $ttl = null): bool
delete(string $key): bool
clear(): bool
getMultiple(iterable $keys, mixed $default = null): iterable
setMultiple(iterable $values, null|int|DateInterval $ttl = null): bool
deleteMultiple(iterable $keys): bool
has(string $key): bool
Example of use of the methods
Storing a value in the cache
Retrieve a value from the cache
Remove a value from the cache
Checks if a value exists in the cache by its key
Clear the entire cache
Handling multiple values
You can store, retrieve and delete multiple values from the cache using the setMultiple, getMultiple and deleteMultiple methods.
Storing multiple values
Retrieve multiple values
Delete multiple values
Exceptions
The library throws the following exceptions:
Mk4U\Cache\Exceptions\CacheException
: for cache related errors.Mk4U\Cache\Exceptions\InvalidArgumentException
: For invalid arguments.
Contributions
Contributions are welcome. If you wish to contribute, please open an issue or a pull request in the repository.
License
This project is licensed under the MIT License.
Contact
If you have any questions or comments, feel free to contact me at http://t.me/alexsadrov16