YMQRBACRelationSetData.class.php
2.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<?php
require_once dirname(__FILE__). '/YMQRBACRelationRedisHelper.class.php';
/**
* 设置应用RBAC关联数据到Redis
*/
class YMQRBACRelationSetData
{
/**
* 存放Redis对象
* @var object
*/
private static $redis;
/**
* 创建 Redis 对象
*/
private static function _createRedis()
{
if (!isset(self::$redis))
{
self::$redis = new YMQRBACRelationRedisHelper();
}
else
{
// 测试此处有 socket 过期现象
$ping = @self::$redis->mRedis->ping();
// 判断连接是否断开
if($ping != '+PONG')
{
self::$redis = new YMQRBACRelationRedisHelper();
}
}
}
/**
* 存数据到Redis
*
* @param string $key 存放的键名
* @param mixed $value 存放的数据
* @example YMQRBACRelationSetData::set("10180","people/info/user,people/info/isAppUser");
*/
public static function set($key, $value)
{
self::_createRedis();
// 设置值
self::$redis->mRedis->set(strval($key), $value);
// // 设置过期时间
// self::$redis->mRedis->setTimeout(strval($key), YMQ_RBAC_RELATION_EXPIRED);
}
/**
* 更新存放的数据的值
*
* @param string $key 存放的键名
* @param mixed $value 存放的新数据
* @example YMQRBACRelationSetData::update("10180","people/info/isAppUser,people/relation/friends");
*/
public static function update($key, $value)
{
// 删除指定的数据
self::delete($key);
// 存放新的数据
self::set($key, $value);
// // 设置过期时间
// self::$redis->mRedis->setTimeout(strval($key), YMQ_RBAC_RELATION_EXPIRED);
}
/**
* 删除指定的数据
*
* @param string key 存放的键名
* @example YMQRBACRelationSetData::delete("10180","people/info/user,people/info/isAppUser");
*/
public static function delete($key)
{
self::_createRedis();
self::$redis->mRedis->delete(strval($key));
}
/**
* 设置key过期时间
*
* @param string $key 存放的键名
*/
public static function setTimeout($key)
{
self::_createRedis();
// 设置值
self::$redis->mRedis->set(strval($key), self::$redis->mRedis->get(strval($key)));
// 设置过期时间
self::$redis->mRedis->setTimeout(strval($key), YMQ_RBAC_RELATION_EXPIRED);
}
}