tp5.1 redis 使用
第一步:在框架根目录config里面新建redis.php文件配置ip及端口:如下:
<?php return [
'host' => '140.143.190.248',
'port' => '6379',
];
第二步:在根目录extend里新建module目录,并在其里面建Redis.php文件,文件内容如下:
<?php
/**
* Created by PhpStorm.
* User: Mac
* Date: 2018/8/20
* Time: 下午1:52
*/ namespace module; class Redis extends \Redis
{
public static function redis() {
$con = new \Redis();
$con->connect(config('redis.host'), config('redis.port'), 5);
return $con;
}
}
第三步:在项目根目录thinkphp目录里helper.php里设置redis助手函数,加入如下内容:
if (!function_exists('redis')) {
    /**
     * 获取容器对象实例
     * @return Container
     */
    function redis()
    {
        return \model\Redis::redis();      //~~~~
    }
}
第四步:在控制器里使用:
例如:(1)给任务id为1的库存设为3个
redis()->set('task_num_1',3);
(2)获取任务列表某任务的库存,如下
$taskid = input('task_id');
$num = redis()->get('task_num_' . $taskid);
(3)创建订单后减去Redis里相应的任务库存
//创建订单结束
redis()->decr('task_num_' . $taskid, 1);
//至此redis基本的使用到此结束!
tp5.1 redis 使用的更多相关文章
- TP5使用Redis处理电商秒杀
		
本篇文章介绍了ThinkPHP使用Redis实现电商秒杀的处理方法,具有一定的参考价值,希望对学习ThinkPHP的朋友有帮助! TP5使用Redis处理电商秒杀 1.首先在TP5中创建抢购活动所需要 ...
 - TP5.0 Redis(单例模式)(原)
		
看到好多面试都问设计模式,我就简单的了解了一下,顺便把之前封装好的Reis做了一次修改. 单例模式(Singleton Pattern 单件模式或单元素模式) 单例模式确保某个类只有一个实例,而且自行 ...
 - TP5中用redis缓存
		
在config.php配置文件下找到缓存设置,将原来的文件缓存修改为redis缓存,也可以改为多种类型的缓存: // +---------------------------------------- ...
 - tp5实现Redis的简单使用
		
方法1: Controller <?php namespace app\index\controller; use think\Controller; use think\session\dri ...
 - ThinkPhp5源码剖析之Cache
		
为什么需要Cache(缓存)? 假设现在有一个小说网,有非常多的读者,有一篇新的章节更新了,那么可能一分钟内有几万几十万的访问量. 如果没有缓存,同样的内容就要去数据库重复查询,那可能网站一下就挂掉了 ...
 - tp5.1中redis使用
		
一.环境安装 1.下载redis,igbniary https://windows.php.net/downloads/pecl/releases/igbinary/ https://windows. ...
 - TP5 中的redis 队列
		
首先我们看一下自己的TP5的框架中的 TP5\vendor\topthink ,这个文件中有没有think-queue这个文件夹,如果没有请安装, 安装这个是要用到Composer的如果没有安装co ...
 - redis消息队列,tp5.0,高并发,抢购
		
redis处理抢购,并发,防止超卖,提速 1.商品队列(List列表),goods_list 控制并发,防止超卖 2.订单信息(Hash集合),order_info ...
 - tp5 redis 单例模式 转载
		
单例模式(Singleton Pattern 单件模式或单元素模式) 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 单例模式有以下3个特点: 1 . 它必须有一个构造函数, ...
 
随机推荐
- 微信公众号开发笔记1(nodejs开发)
			
本篇记录了微信公众号开发的一些笔记 一.微信服务器与我们服务器的交流 微信开发者拥有自己的服务器,在我们服务器上可以与微信服务器进行交流.既然可以交流,那就必定需要前提条件(微信认证),也就是说,只有 ...
 - 忘记本地MySQL数据库密码的解决方案。
			
忘记本地MySQL数据库密码,解决方案,分以下10个步骤: 参考链接: https://blog.csdn.net/weidong_y/article/details ...
 - 第十二次作业psp
			
psp 进度条 代码累积折线图 博文累积折线图 psp饼状图
 - Daily Scrum 11.7
			
明后两天周六日,按照TFS的日常安排应该是休息,所以让他们自由完成已经分配的任务. 姓名 今日任务 黄新越 提取爬取网页的关键字并输出到接口 刘垚鹏 程序总架构的修改与多线程的学习 王骜 多线程学习 ...
 - Linux基础入门--06
			
简单的文本处理 实验介绍 这一节我们将介绍这几个命令:tr.col.join.paste 1.tr: -d:删除和set1匹配的字符,不是全词匹配也不是按字符顺序匹配 -s:除去指定的连续并重复的字符 ...
 - c# 程序重启设定
			
问题情境: 程序随着时间运行,越来越大.暂时想到的两种方法,一是反攻代码,查看占内存大的函数,是不是没有回收.再就是暴力设定程序定时重启. 解决原理: 定时重启:暂设定timer,时间匹配执行rest ...
 - 使用sqlyog创建数据库的错误
			
1.错误代码: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL s ...
 - VS2010+WinXP+MFC程序 无法定位程序输入点于动态链接库
			
1.问题描述 原开发环境:Win7 64位旗舰版,VS2010,ThinkPad T460 出现问题:自己开发的MFC程序在WinXP环境下无法正常运行,弹框“无法定位程序输入点InitializeC ...
 - SQL语句联表查询
			
Natural join:字段名和数据类型相同字段进行等值连接: inner join:与join相同,把符合条件的元组选出来,创建视图时用的即是inner join: left join:左表全选出 ...
 - spring冲刺第十天
			
调试运行,对整体的游戏方面进行改进.冲刺完了,但依然有很多问题,比如无法暂停,游戏结束后只能退出重来等