知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

Redis系列-php怎么通过redis扩展使用redis

发布时间:2015-05-27 19:28:45作者:知识屋

 
 
 
 
1、安装php扩展
 
a)安装php扩展phpredis:
 
 
[plain] 
[root@xsf002 tool]# git clone https://github.com/nicolasff/phpredis.git phpredis  
[root@xsf002 tool]# cd phpredis/  
[root@xsf002 phpredis]# /usr/local/php/bin/phpize   #<SPAN style="TEXT-INDENT: 20px">假设 php目录:</SPAN><SPAN style="TEXT-INDENT: 20px">/usr/local/php</SPAN>  
[root@xsf002 phpredis]# ./configure --with-php-config=/usr/local/php/bin/php-config  
[root@xsf002 phpredis]# make  
[root@xsf002 phpredis]# make install  
 
[root@xsf002 tool]# git clone https://github.com/nicolasff/phpredis.git phpredis
[root@xsf002 tool]# cd phpredis/
[root@xsf002 phpredis]# /usr/local/php/bin/phpize   #假设 php目录:/usr/local/php
[root@xsf002 phpredis]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@xsf002 phpredis]# make
[root@xsf002 phpredis]# make install 如果顺利,将得到类似如下提示: 
 
 
[plain] 
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/  
 
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ php扩展文件目录下,将有个redis.so文件。 
 
b)加载redis.so
 
在php.ini 文件中,添加配置:
 
 
[plain] 
[redis]  
extension=redis.so  
 
[redis]
extension=redis.so重启web服务器,echo phpinfo() ,将看到大致如下显示:
 
 
/
 
 2、通过扩展访问redis服务器
 
php如何使用redis服务器存取数据?无非是经过phpredis扩展模块,通过如下几个步骤:
 
1、实例化redis类   【new redis()】
 
2、调用redis类方法,连接redis服务器 【connect,pconnect】
 
3、设置连接选项【setOption】
 
4、存/取数据 
 
5、关闭连接 【close】
 
如果使用默认选项,步骤3不需要。请参看下面的代码示例:  
 
 
[php] 
<?php  
$redis = new Redis(); #实例化redis类  
$redis->connect('127.0.0.1'); #连接服务器  
$redis->set('key', 'hello '); #调用方法,设置string类型值  
$redis->append('key', 'world'); #修改string类型值  
echo $redis->get('key');  #获取redis key的值,并输出显示   
echo $redis->type('key'); #获取key 的数据类型  
echo $redis->echo('will close...');# 输出字符串  
$redis->close(); #关闭连接  
 
<?php
$redis = new Redis(); #实例化redis类
$redis->connect('127.0.0.1'); #连接服务器
$redis->set('key', 'hello '); #调用方法,设置string类型值
$redis->append('key', 'world'); #修改string类型值
echo $redis->get('key');  #获取redis key的值,并输出显示 
echo $redis->type('key'); #获取key 的数据类型
echo $redis->echo('will close...');# 输出字符串
$redis->close(); #关闭连接  通过上面的代码,我们基本完成一个简单redis的存取操作。下面罗列一些Redis类的一些属性及方法 
 
a)连接redis server:
 
 
connect :连接server
pconnect :长连接
auth :权限验证
select :选择DB
close : 关闭连接
  setOption : 设置 client 选项
getOption : 获取client选项
ping : ping redis server
 echo : 输出 字符串
 
注意,如果频繁操作redis,不停地connect 和close会很耗性能的,这个时候,建议用pconnect 建立个长连接
 
b)字符串读写函数
 
 
append  :在值的后面追加值
decr :递减一个key的值
incr :递增一个key的值
 
get :获取一个值
set :设置一个值
getSet :设置值,并返回老值
mGet :批量获取值
mSet :批量设置值
strlen :获取值长度
 
注意:如果能用批量操作尽量用批量,减少频繁连接redis数据库性能
 
c)hash读写函数
 
 
hDel :删除一个多个域
hExists :判断一个hash域是否存在
hGet :获取hash域的值
hGetAll :获取所有域值
hIncrBy :自增长一个hash int域的值
hKeys :获取hash 所有域
hLen :获取域个数
hMGet :批量获取域的值
hMSet :批量设置域的值
hSet :设置域的值
hVals:得到所有域的值
 
d)list读写函数
 
 
lInsert:插入元素
lLen:list长度
lPop:移除并获取第一个颜色
lPush:插入一个元素
lRem:移除元素
lSet:设置元素值
 
e)set
 
 
sAdd:增加一个或多个成员
sIsMember:是否包含
sMembers:得到成员
sMove:移动成员
sPop:移除成员
sRandMember:得到随机成员
sRem:删除
 
f)sorted set
 
 
zAdd:增加一个或多个
zCard:成员个数
zIncrBy:递增成员score
zRange:返回索引范围内的成员
zRangeByScore :返回score范围内的成员
zScore:获取成员score
zRem:移除一个或多个成员
 
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜