PHP使用Redis

 
通过 PHP 使用 Redis 之前,同样需要做一些准备工作,首先你应该熟练掌握  PHP 语言,再者是已经安装了 PHP Redis 扩展程序。本节内容是专门为 PHP 程序开发人员准备的。

安装扩展程序

首先下载 PHP Redis 扩展程序(点击前往),下载的扩展程序要与 Redis 版本相符合。当下载完成后,将文件解压至 phpredis 目录,然后执行以下安装命令:
$ cd phpredis-5.0.1         # 进入 phpredis 目录
/usr/local/php/bin/phpize   #用phpize生成configure配置文件
./configure --with-php-config=/usr/local/php/bin/php-config
$ suodo make #编译
$ suodo make install #安装
注意,上述安装命令在 Ubuntu 环境下执行。

编辑 php.ini 配置文件,在文件末尾添加如下语句:
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20190711"
extension = redis.so
重启 apache 或者 php-fpm,并查看 phpinfo 信息,就能看到 Redis 扩展已经安装完成。

连接Redis服务器

实例如下:
<?php
    //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);
   echo "连接成功";
    //检查服务是否运行
   echo "服务器正在运行: " . $redis->ping();
?>
程序运行结果:
连接成功
服务器正在运行:PONG

PHP Redis字符串

实例如下:
<?php
   //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);
   echo "服务器连接成功";
   //设置 redis 字符串数据
   $redis->set("webname", "www.biancheng.net");
   // 获取存储的数据并输出
   echo "获取网站名: " . $redis->get("webname");
?>
程序运行结果:
服务器连接成功
获取网站名:www.biancheng.net

PHP Redis列表

实例如下:
<?php
   //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);
   echo "服务器连接成功";
   //存储数据到列表中
   $redis->lpush("course_list", "Python");
   $redis->lpush("course_list", "Java");
   $redis->lpush("course_list", "PHP");
   // 获取存储的数据并输出
   $arList = $redis->lrange("course_list", 0 ,2);
   echo "获取列表元素:";
   print_r($arList);
?>
程序运行结果:
服务器连接成功
获取网站名:
PHP
Java
Python

PHP Redis哈希

实例如下:
<?php
   //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);
   echo "服务器连接成功";
   //存储数据到散列
   $hash_value=['username_1'=>'Jack','username_1'=>'Helen']
   $redis->hmset("user", $hash_value);
   // 获取存储的数据并输出
   $result=$redis->hget('user','username_1')
   echo "获取用户名";
   print_r($result);
?>
程序运行结果:
服务器连接成功
获取用户名:
Jack

PHP Redis键

实例如下:
<?php
   //连接本地的 Redis 服务
   $redis = new Redis();
   $redis->connect('127.0.0.1', 6379);
   echo "服务器连接成功";
   // 查看所有key
   $arList = $redis->keys("*");
   echo "获取所有键: ";
   print_r($arList);
?>
程序运行结果:
服务器连接成功
获取所有键:
webname
user
course_list