thinkphp6 配置redis
thinkphp6 配置redis
官方文档写法就是坑 自己实现一个吧
<?php class RedisClient { private static $instance = null; /** * Get a instance of MyRedisClient * * @param string $key * @return object */ public static function getInstance() { if (!self::$instance) { $redis = new \Redis(); $redis->connect('127.0.0.1', 6379); self::$instance = $redis; } return self::$instance; } public static function lock($key, $expire = 5) { $_redis = self::getInstance(); $is_lock = $_redis->setnx($key, time() + $expire); // 不能获取锁 if (!$is_lock) { // 判断锁是否过期 $lock_time = $_redis->get($key); // 锁已过期,删除锁,重新获取 if (time() > $lock_time) { self::unlock($key); $is_lock = $_redis->setnx($key, time() + $expire); } } return $is_lock ? true : false; } /** * 释放锁 * @param String $key 锁标识 * @return Boolean */ public static function unlock($key) { $_redis = self::getInstance(); return $_redis->del($key); } }
放到extend目录下 就好了
如果遇到什么不懂的地方直接关注公众号留言(本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。)
作者:newmiracle
出处:https://www.cnblogs.com/newmiracle/