Создание своего драйвера Cache

Для создания собственного драйвера кэша создайте класс, реализующий интерфейс Imhotep\Contracts\Cache\ICacheStore:

<?php

namespace App\Extensions\MyCache;

use Imhotep\Contracts\Cache\ICacheStore;

class MyCacheStore implements ICacheStore
{
    // ...
}
PHP

После реализации в классе всех методов интерфейса зарегистрируйте драйвер в методе register класса App\Providers\AppServiceProvider:

<?php

namespace App\Providers;

use Imhotep\Facades\Cache;
use Imhotep\Framework\Providers\ServiceProvider;
use App\Extensions\MyCache;

class AppServiceProvider extends ServiceProvider
{
    public function register(): void
    {
        $this->app->booting(function () {
            Cache::extend('mycache', function () {
                return new MyCacheStore();
            });
        });
    }
}
PHP

Обратите внимание, что для вызова метода Cache::extend необходимо использовать обработчик booting. Это гарантирует, что ваш драйвер будет зарегистрирован после регистрации базовых классов системы кэширования.