yii框架redis結合php實現(xiàn)秒殺效果(實例代碼)
更新時間:2017年10月26日 14:22:40 作者:qq_40794814
這篇文章主要介紹了yii框架redis結合php實現(xiàn)秒殺效果,非常不錯,代碼簡單易懂,需要的朋友可以參考下
廢話不多說了,直接給大家貼代碼了,具體代碼如下所示:
<?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實現(xiàn)秒殺效果(實例代碼),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
PHP數(shù)據(jù)庫鏈接類(PDO+Access)實例分享
這篇文章主要介紹了PHP數(shù)據(jù)庫鏈接類(PDO+Access),有需要的朋友可以參考一下2013-12-12
使用VS?Code+phpstudy實現(xiàn)PHP環(huán)境配置指南
這篇文章主要給大家介紹了關于使用VS?Code+phpstudy實現(xiàn)PHP環(huán)境配置的相關資料,對于初學者可以使用集成開發(fā)環(huán)境PHPStudy來配置PHP環(huán)境,需要的朋友可以參考下2023-07-07

