直接储存

connect('127.0.0.1', 6379, 30);
    //设置连接密码
    $redis->auth('junyi');
    //获取出售的数量,默认为空
    $kuchun = $redis->get('kucun');
    //秒杀数量
    $total = 100;
    if ($kuchun < $total) {
        //监控售出数量是否变动,一旦中途变动就会打断redis事务
        $redis->watch('kucun');
        //开启事务
        $redis->multi();
        //设置售出数量+1
        $redis->set("kucun", $kuchun + 1);
        //执行事务
        $result = $redis->exec();
        if ($result) {
            //剩余数量
            $number = $total - ($kuchun + 1);
            //$openid 用户id
            $openid = $number;
            $redis->hset("list", "user_" . $openid, $kuchun);
            //获取抢购成功的用户
            $data = $redis->hgetall('list');
            var_dump($data);
            var_dump($number);
        } else {
            var_dump('手气很差哦,再试一下!');
        }
    } else {
        var_dump('已经被抢光了');
    }
}

先存后取

connect('127.0.0.1', 6379);
    for ($i = 1; $i rPush("goods_list", $i);
    }
}

//秒杀
function kill()
{
    //假设这是是用户的uid
    $uuid = md5(uniqid('user') . time());
    //创建连接redis对象
    $redis = new \Redis();
    //连接到服务器127.0.0.1,端口号6379,默认连接时间300,密码为空
    $redis->connect('127.0.0.1', 6379);
    //监控列表中的值是否变动
    $redis->watch("goods_list");
    //开启事务
    $redis->multi();
    //从左边开始删除一个元素,并把删除的值赋给$goodsId
    if ($goodsId = $redis->lPop("goods_list")) {
        //秒杀成功,将幸运用户存在集合中
        $redis->hSet("buy_order", $uuid, $goodsId);
        //执行事务
        $redis->exec();
    } else {
        //秒杀失败,将失败用户计数,默认从0开始+1
        $redis->incr("fail_user_num");
    }
    echo "SUCCESS";
}