日期:2014-05-17 浏览次数:20464 次
通过前面几篇blog,我们应该对redis有个大致的认识,这里再讲解下,php怎么连接redis服务器进行数据读写?
1、安装php扩展
a)安装php扩展phpredis:
[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如果顺利,将得到类似如下提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/php扩展文件目录下,将有个redis.so文件。
b)加载redis.so
在php.ini 文件中,添加配置:
[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 $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:
注意,如果频繁操作redis,不停地connect 和close会很耗性能的,这个时候,建议用pconnect 建立个长连接
b)字符串读写函数
注意:如果能用批量操作尽量用批量,减少频繁连接redis数据库性能
c)hash读写函数