سلام دوستان وقتتون بخیر، من میخوام از سیستم cache ردیس استفاده کنم خود ردیس درست نصب و فعال سازی شده و مشکلی با cli اش هم ندارم. پکیج predis/predis رو نصب کردم و کانفیگ لازم رو کردم تا متصل بشه به ردیس ولی انجام نمیشه هرچی میخوام ست کنم.
database.php
'redis' => \[
'client' => env('REDIS_CLIENT', 'predis'),
'default' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_DB', 0),
],
'cache' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_CACHE_DB', 1),
],
\],
cache.php
'redis' => \[
'driver' => 'redis',
'connection' => 'cache',
\],
این هم کدی که برای ست کردن کش استفاده میکنم.
$redis = new Client();
$redis->set('wd', 'wfw' ,12);
$redis->setex('dw' , '35' , 3);
ممنون میشم راهنمایی کنید
شما نباید به تنظیمات فایل cache.php دست بزنید تنها کاری که نیاز هست اعمال کردن دو مقدار زیر در .env هست
CACHE_DRIVER=redis
برای کش کردن هم فقط کافیه از helper function با عنوان cache استفاده بفرمایید
برای استفاده معمولی هم، زمانی که به cache نیاز دارید هم فقط Redis رو صدا میزنید یا همن Client از کتابخونه predis
شاید پاسخ شما همینجا باشد
بله تنظیماتی که گفتین انجام دادم و ریست هم کردم و کش رو هم پاک کردم
من به این شکل میتونم ازش استفاده کنم
$redis = new Predis\Client();
$redis->setex('aqwd' , 20 , 'gw');
dd($redis->get('awd', serialize(['2e2e'=>'2'])))
این اوکیه
حالا من همینو با متود cache اینجوری مینویسم
cache()->set('wd','wd');
;dd(cache()->get('wd'))
این کار نمیده و هیچی بر نمیگردونه. و چون من دارم توی محیط api کار میکنم اروری هم بده نمیتونم ببینم.