При попытке использовать кеш я получаю следующее исключение:
Но в документах Laravel (https://laravel.com/docs/5.7/cache) они используют закрытие в их примере:
Любая помощь, высоко ценимая ... погуглила ее, и люди, кажется, возникли проблемы с замыканиями forever (), не являющимися сериализуемыми (но предлагаемые решения не работают для меня) ):
public function getAccount(string $guid): Account
{
$key = md5(sprintf('xero/accounts[guid="%s"]', $guid));
$account = $this->cache->get($key);
if ($account === null) {
//dump('account not found, storing in cache...');
/** @var Account $account */
$account = $this->xero->loadByGUID(Account::class, $guid);
$this->cache->put($key, $account, Carbon::now()->addHour());
}
}
Но все равно появляется та же ошибка (не удается сериализовать Closure) в строке '$ this-> cache-> put ($ key, $ account, Carbon :: now () -> addHour ( )); '
Объект $ account имеет тип: use XeroPHP \ Models \ Accounting \ Account; (от https://github.com/calcinai/xero-php)