首页 > 数据库 >ThinkPHP使用Redis

ThinkPHP使用Redis

时间:2024-04-19 14:44:56浏览次数:25  
标签:name Redis redis env 使用 ThinkPHP

前置环境

安装Redis
新建一个ThinkPHP6项目

ThinkPHP使用Redis

安装 Redis 扩展

# 在项目目录下执行如下代码,安装redis依赖
composer require topthink/think-redis

config/database.php

'redis' => [
    // 默认数据连接标识
    'default' => [
        'host'         => env('redis.hostname', '127.0.0.1'),
        'port'         => env('redis.port', 6379),
        'password'     => env('redis.password', ''),
        'select'       => env('redis.database', 0),
        'timeout'      => 0,
        'expire'       => 0,
        'persistent'   => false,
        'prefix'       => '',
        'serialize'    => [],
    ],
]

测试Redis

<?php
namespace app\controller;

use think\facade\Cache;
use think\facade\Db;

class Index
{
    public function index()
    {
        // 写入缓存
        Cache::store('redis')->set('name', 'value');

        // 从缓存中读取
        $name = Cache::store('redis')->get('name');

        // 使用 Redis 实例
        $redis = Cache::store('redis')->handler();

        // 使用 Redis 实例进行操作
        $redis->set('foo', 'bar');
        $value = $redis->get('foo');

        // 使用 Redis 作为数据库驱动
        $data = Db::connect('redis')->table('user')->where('id', 1)->find();

        return 'Hello, ' . $name;
    }
}

标签:name,Redis,redis,env,使用,ThinkPHP
From: https://www.cnblogs.com/aeolian/p/18145842

相关文章

  • 使用示例解释.NET中的Mocking是什么?
    让我们踏上探索.NET软件开发中Mocking概念的旅程,让我们深入了解Mocking是多么简单易懂、易于访问。请与我一起穿越这个主题,我将涵盖以下内容:理解Mocking:为何它对于构建强大的测试策略至关重要。探索一些最常见的Mocking库:如Moq、NSubstitute、FakeItEasy和RhinoMocks等。掌握......
  • ddddocr基本使用和介绍
    ddddocr基本使用和介绍在使用爬虫登录网站的时候,经常输入用户名和密码后会遇到验证码,这时候就需要用到今天给大家介绍的python第三方库ddddocr,ddddocr是一款强大的通用开源ocr识别库,具有高效、准确、易用的特点,广泛应用于图像处理和文字识别任务。本文将为大家介绍ddddocr的基本......
  • redis常见的应用问题以及解决方案
    缓存穿透问题描述:key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会压到数据源(数据库),从而可能压垮数据源。用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。缓存穿透的条件:1.应用服务器压力变大2......
  • Mac安装Redis
    Mac安装Redis#安装Homebrew命令,Homebrew安装的软件会默认在/usr/local/Cellar/路径下#/bin/zsh-c"$(curl-fsSLhttps://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"#Homebrew命令安装redisbrewinstallredis启动Redis#方式一:使用brew帮助我们启动软件......
  • 如何使用 abp 创建 module 并应用单独的数据库迁移
    创建abp项目官方文档已经提供了非常详细的新建项目向导。参考:https://docs.abp.io/en/abp/latest/Getting-Started-Create-Solution?UI=Blazor&DB=EF&Tiered=YesCLI命令参考:https://docs.abp.io/en/abp/latest/CLI我们使用abpCLI创建一个新项目。我使用Blazor来开发前......
  • WPF项目使用日志
    提问WPF项目如何使用日志回答引入nugetlog4net加入配置特性[assembly:ThemeInfo(ResourceDictionaryLocation.None,//wherethemespecificresourcedictionariesarelocated//(usedifaresourceisnotfoundinthepage,//orapplicationresourcedict......
  • 前端如何使用Javascript实现一个简单的发布订阅模式
    在前端开发中,我们经常需要处理事件的订阅与发布,以实现组件之间的解耦和通信。本文将介绍如何使用JavaScript实现一个简单的发布订阅模式,通过分步写代码的方式,带领读者一步步完成实现过程。步骤一:定义EventEmitter类首先,我们需要定义一个名为EventEmitter的类,作为发布订阅......
  • Sqlsugar 的使用
    1、实体特性[SugarColumn(IsPrimaryKey=true)]标识是否为主键[SugarColumn(IsIdentity=true)]是否为自增长[SugarColumn(ColumnName="id")]对应数据库表里面的某列[SugarColumn(IsIgnore=true)]忽略熟悉,在ORM会过滤掉[SugarColumn(ColumnDescription="创建时间"......
  • vscode使用PasteImage插入图片
    vscode使用PasteImage插入图片需求在vscode中写Markdown文件,经常需要插入图片,使用插件PasteImage进行简单配置后,就可以方便插入图片并自动存放到相应路径的文件夹中安装及配置安装从扩展商店搜索PasteImage并安装即可配置vscode设置中搜索PasteImage,找到PasteImage:......
  • 浅谈@Transactional 注解的使用
    在SpringBoot的开发项目中,在Controller控制层,我们一般只做入参的校验;在Service服务层,我们把业务逻辑都写在这里,在服务层的方法中,我们会调用其它的服务层接口或者mapper层方法,所以,需要在服务层的方法上,我们需要增加:@Transactional(rollbackFor=Exception.class)添加该注解后......