yii框架redis结合php实现秒杀效果(实例代码)


Posted in PHP onOctober 26, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<?php
namespace backend\controllers;
use Yii;
use yii\web\Controller;
/**
* 
*/
class GoodsController extends Controller
{
public $enableCsrfValidation=false;
public function actionInfo()
{
$data=yii::$app->db->createCommand("select * from goods ")->queryAll();
return $this->render('index',['data'=>$data]);
}
Public function actionXx()
{
$id=yii::$app->request->get('id');
$data=yii::$app->db->createCommand("select * from goods where id='$id'")->queryOne();
return $this->render('info',['data'=>$data]);
}
Public function actionAdd()
{
$a=yii::$app->redis;
if (Yii::$app->request->isPost)
{
$data=yii::$app->request->post();
$res=yii::$app->db->createCommand()->insert('goods',$data)->execute();
if($res)
{
for ($i=0; $i <$data['counts'] ; $i++)
{ 
$a->lpush('goods',1);
}
return $this->redirect(array('goods/info'));
}
else
{
echo "添加失败";
}
}
else
{
return $this->render('add');
}
}
public function actionOrder()
{
$redis=yii::$app->redis;
$count=$redis->lpop('goods');
if(empty($count))
{
echo "库存不足";die;
}
$res=yii::$app->db->createCommand("update goods set counts=counts-1 where id=1 and counts>0")->execute();
if($res)
{
echo "秒杀成功";
}
else
{
echo "秒杀失败";
}
}
}
?>

总结

以上所述是小编给大家介绍的yii框架redis结合php实现秒杀效果(实例代码),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
基于mysql的论坛(2)
Oct 09 PHP
wiki-shan写的php在线加密的解密程序
Sep 07 PHP
php trim 去除空字符的定义与语法介绍
May 31 PHP
使用swoole扩展php websocket示例
Feb 13 PHP
Thinkphp中import的几个用法详细介绍
Jul 02 PHP
PHP+MYSQL会员系统的开发实例教程
Aug 23 PHP
php将图片保存为不同尺寸图片的图片类实例
Mar 30 PHP
PHP直接修改表内容DataGrid功能实现代码
Sep 24 PHP
php连接oracle数据库的核心步骤
May 26 PHP
PHP实现页面静态化的超简单方法
Sep 06 PHP
微信第三方登录(原生)demo【必看篇】
May 26 PHP
php 中phar包的使用教程详解
Oct 26 PHP
PHP对象的浅复制与深复制的实例详解
Oct 26 #PHP
PHP中的浅复制与深复制的实例详解
Oct 26 #PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 #PHP
thinkPHP5分页功能实现方法分析
Oct 25 #PHP
thinkPHP框架中执行原生SQL语句的方法
Oct 25 #PHP
php调用云片网接口发送短信的实现方法
Oct 25 #PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
Oct 25 #PHP
You might like
php+mysql不用递归实现的无限级分类实例(非递归)
2014/07/08 PHP
你应该知道PHP浮点数知识
2015/05/13 PHP
yii实现model添加默认值的方法(2种方法)
2016/01/06 PHP
JavaScript中使用Substring删除字符串最后一个字符
2013/11/03 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
jquery使用each方法遍历json格式数据实例
2015/05/18 Javascript
自己动手写的jquery分页控件(非常简单实用)
2015/10/28 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
2015/12/10 Javascript
微信小程序 教程之wxapp 视图容器 view
2016/10/19 Javascript
JavaScript实现二维坐标点排序效果
2017/07/18 Javascript
vue中的非父子间的通讯问题简单的实例代码
2017/07/19 Javascript
JS轮播图实现简单代码
2021/02/19 Javascript
详解Vue webapp项目通过HBulider打包原生APP
2018/06/29 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【凹多边形的分离轴检测算法】
2018/12/13 Javascript
layer弹出层扩展主题的方法
2019/09/11 Javascript
[10:39]DOTA2上海特级锦标赛音乐会纪录片
2016/03/21 DOTA
[02:08]2018年度CS GO枪械皮肤设计大赛优秀作者-完美盛典
2018/12/16 DOTA
[42:48]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第二场 12.11
2020/12/16 DOTA
python中pytest收集用例规则与运行指定用例详解
2019/06/27 Python
从python读取sql的实例方法
2020/07/21 Python
requests在python中发送请求的实例讲解
2021/02/17 Python
顺丰快递Java软件工程师面试题
2015/07/31 面试题
医院护理人员的自我评价分享
2013/10/04 职场文书
竞选演讲稿范文
2013/12/28 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
cf收人广告词大全
2014/03/14 职场文书
初中作文评语大全
2014/04/23 职场文书
学校读书活动总结
2014/06/30 职场文书
2014年学校国庆主题活动方案
2014/09/16 职场文书
2014年最新学校运动会广播稿
2014/09/17 职场文书
干部作风建设个人剖析材料
2014/10/11 职场文书
2015年上半年信访工作总结
2015/03/30 职场文书
旅游投诉信范文
2015/07/02 职场文书
一些让Python代码简洁的实用技巧总结
2021/08/23 Python
JavaScript 与 TypeScript之间的联系
2021/11/27 Javascript
SQL Server实现分页方法介绍
2022/03/16 SQL Server