在
laravel
中使用redis
时,共需要四步操作:
- 使用
composer
安装predis/predis
包- 在
config/database.php
中配置redis
- 在
.env
中设置redis
的连接信息(测试时保持默认即可)- 在需要用
redis
的页面引入redis
即可,使用时:Redis::hSet('hash','key','value');
- 在框架外使用redis,有兴趣的可以看一下
composer
安装predis/predis
包composer require predis/predis
config/database.php
中配置redis
'redis' => [
//启动
'client' => env('REDIS_CLIENT', 'phpredis'),
'options' => [
'cluster' => env('REDIS_CLUSTER', 'redis'),
'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'),
],
//redis的默认启动配置
'default' => [
'url' => env('REDIS_URL'),
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', '6379'),
'database' => env('REDIS_DB', '0'),
],
//redis用于缓存
'cache' => [
'url' => env('REDIS_URL'),
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', '6379'),
'database' => env('REDIS_CACHE_DB', '1'),
],
]
.env
中配置redis
连接信息REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
//redis 用于队列、缓存、sission
BROADCAST_DRIVER=log
CACHE_DRIVER=redis //文件在:`config/cache.php`
QUEUE_CONNECTION=redis //文件在:`config/queue.php`
SESSION_DRIVER=redis //文件在:`config/session.php`
SESSION_LIFETIME=120
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Redis;
class ActivityController extends Controller
{
/**
*存入用户的年龄信息
*/
public function text($id){
$age = User::query()->where('id',$id)->get();//从库内查询用户年龄
$user_set = Redis::set('user:'.$id,$age->age);//将用户年龄存入redis
$user_get = Redis::get('user:'.$id);//从redis中查询用户年龄
}
}
5、在框架外使用redis
<?php
$redis = new redis(); //创建一个redis
$result = $redis->connect('127.0.0.1', 6379); //连接到一个redis
if($result){
$user_set = $redis->set('user:1',"18");
$user_get = $redis->get('user:1');
}
?>