Redis PHP连接操作
①安装相关程序
1
|
# yum install php php-devel php-fpm httpd |
②下载并编译安装phpredis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# git clone https://github.com/phpredis/phpredis.git 正克隆到 ‘phpredis‘ ...
remote: Counting objects: 6577, done .
remote: Compressing objects: 100% (15 /15 ), done .
remote: Total 6577 (delta 4), reused 0 (delta 0), pack-reused 6562 接收对象中: 100% (6577 /6577 ), 3.32 MiB | 359.00 KiB /s , done .
处理 delta 中: 100% (4369 /4369 ), done .
# cd phpredis # phpize Configuring for :
PHP Api Version: 20100412 Zend Module Api No: 20100525 Zend Extension Api No: 220100525 # ./configure # make # make install Installing shared extensions: /usr/lib64/php/modules/
|
③配置PHP支持扩展模块
1
2
|
# vi /etc/php.ini 731 extension = /usr/lib64/php/modules/redis .so
|
④测试
a.连接到 redis 服务
1
2
3
4
5
6
7
8
9
10
11
12
13
|
# vi test1.php <?php // 连接本地的 Redis 服务
$redis = new Redis();
$result = $redis->connect( ‘127.0.0.1‘ ,6379);
if ($result){
echo "<h1>Connection to server sucessfully<h1>" ;
} else {
echo "<h1>Connection to server fail<h1>" ;
}
// 查看服务是否运行
echo "Server is running: " . $redis-> ping ();
?> |
执行脚本,输出结果为:
Connection to server sucessfully
Server is running: +PONG
b.Redis PHP String(字符串) 实例
set
描述:设置key和value的值
参数: Key Value
返回值:BOOL 成功返回:TRUE;失败返回:FALSE
get
描述:获取有关指定键的值
参数:key
返回值:string或BOOL 如果键不存在,则返回 FALSE;否则,返回指定键对应的value值。
1
2
3
4
5
6
7
8
9
|
# vi test2.php <?php $redis = new redis();
$redis->connect( ‘127.0.0.1‘ , 6379);
$result = $redis-> set ( ‘test‘ , "12345" );
var_dump($result); // 结果:bool( true )
$result = $redis->get( ‘test‘ );
var_dump($result); // 结果:string(5) "12345"
?> |
c.Redis PHP List(列表) 实例
lpush
描述:由列表头部添加字符串值。如不存在该键则创建该列表;如该键存在,且不是一个列表,返回FALSE。
参数:key,value
lgetrange
描述:返回在该区域中的指定键列表中开始到结束存储的指定元素,lGetRange(key, start, end)。0第一个元素,1第二个元素… -1最后一个元素,-2的倒数第二…
参数:key start end
返回值:成功返回查找的值,失败false
1
2
3
4
5
6
7
8
9
10
11
12
13
|
# vi test3.php <?php // 连接本地的 Redis 服务
$redis = new Redis();
$redis->connect( ‘127.0.0.1‘ , 6379);
// 存储数据到列表中
$redis->lpush( "list" , "Redis" );
$redis->lpush( "list" , "Mongodb" );
$redis->lpush( "list" , "Mysql" );
// 获取存储的数据并输出
print_r($redis->lgetrange( ‘list‘ ,0,-1));
// 结果:Array ( [0] => Mysql [1] => Mongodb [2] => Redis )
?> |
使用phpRedisAdmin管理Redis
①下载安装相关程序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
# yum -y install php-mbstring # git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git 正克隆到 ‘phpRedisAdmin‘ ...
remote: Counting objects: 560, done .
remote: Total 560 (delta 0), reused 0 (delta 0), pack-reused 560 接收对象中: 100% (560 /560 ), 165.53 KiB | 97.00 KiB /s , done .
处理 delta 中: 100% (332 /332 ), done .
# cd phpRedisAdmin/ # git clone https://github.com/nrk/predis.git vendor 正克隆到 ‘vendor‘ ...
remote: Counting objects: 19472, done .
remote: Total 19472 (delta 0), reused 0 (delta 0), pack-reused 19472 接收对象中: 100% (19472 /19472 ), 4.98 MiB | 669.00 KiB /s , done .
处理 delta 中: 100% (11908 /11908 ), done .
# mv phpRedisAdmin /var/www/html/ |
②使用用phpRedisAdmin
浏览器输入http://localhost/phpRedisAdmin进入(默认无需帐号密码,需自行设置)
问题:
phpRedisAdmin无法打开,提示HTTP 500错误,且httpd日志显示如下:
PHP Fatal error: Call to undefined function mb_internal_encoding() in /var/www/html/phpRedisAdmin/includes/common.inc.php on line 59
解决:
缺少php-mbstring扩展,yum -y install php-mbstring
Redis 桌面管理工具
①Redis Desktop Manager
Redis Desktop Manager 是一个快速、简单、支持跨平台的 Redis 桌面管理工具,基于 Qt 5 开发,支持通过 SSH Tunnel 连接。