PHP使用Redis

11个月前 (04-28)
通过 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网站站点" rel="nofollow" />

服务器连接成功

获取网站名:www.biancheng网站站点" rel="nofollow" />

<?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