YMQRBACRelationGetData.class.php
1.49 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
<?php
require_once dirname(__FILE__). '/YMQRBACRelationRedisHelper.class.php';
/**
* 获取Redis存放的应用RBAC关联数据
*/
class YMQRBACRelationGetData
{
/**
* 存放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();
}
}
}
/**
* 获取指定的数据
*
* @param string $key 键名
* @param mixed $return 此参数用于控制返回结果的类型
* @return mixed (array|string)
*/
public static function get($key, $return = array())
{
self::_createRedis();
// 数据存在: 返回字符串 , 不存在: 返回 false
$tempResult = self::$redis->mRedis->get(strval($key));
if ($tempResult != false && is_string($tempResult))
{
if (is_array($return))
{
$return = explode(',', $tempResult);
}
else
{
$return = $tempResult;
}
}
return $return;
}
}