IT序号网

PHP 使用 Redis知识解答

flyfish 2021年05月25日 编程语言 143 0

安装

开始在 PHP 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 PHP redis 驱动,且你的机器上能正常使用 PHP。 接下来让我们安装 PHP redis 驱动:下载地址为:IT虾米网

PHP安装redis扩展

以下操作需要在下载的 phpredis 目录中完成:

$ wget https://github.com/phpredis/phpredis/archive/2.2.4.tar.gz 
$ cd phpredis-2.2.7 # 进入 phpredis 目录 $ /usr/local/Cellar/php\@7.0/7.0.29_1/bin/phpize   // 注意这里是你要安装的php的phpize  $ ./configure --with-php-config=/usr/bin/php-config  // 如果只有一个php就直接./configure;如果有多个php版本就选需要安装扩展的那个php-config $ make && make install

如果你是 PHP7 版本,则需要下载指定分支:

git clone -b php7 https://github.com/phpredis/phpredis.git

注意:如果提示报错,那么需要去下载的Redis目录下的modules下,将redis.so文件复制到"/usr/lib/php/extensions/no-debug-zts-20090626"下(不同电脑可能不太一样)

可能会提示权限不足导致失败的问题,此时需要在重启电脑的过程中,按住command +R,进入终端输入csrutil disable命令,完成复制后再次重启,按command +R进入终端输入csrutil enable.

修改php.ini文件

vi /private/etc/php.ini(不同电脑可能不同)
如果找不到php.ini文件执行php --ini找到php.ini)

增加如下内容:

extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20160303"(此目录以实际为准)
extension=redis.so

安装完成后重启php-fpm 或 apache。查看phpinfo信息,就能看到redis扩展。

PHP 使用 Redis


连接到 redis 服务

<?php 
    //连接本地的 Redis 服务 
   $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; //查看服务是否运行 echo "Server is running: " . $redis->ping(); ?>

执行脚本,输出结果为:

Connection to server sucessfully 
Server is running: PONG

Redis PHP String(字符串) 实例

<?php 
   //连接本地的 Redis 服务 
   $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; //设置 redis 字符串数据 $redis->set("tutorial-name", "Redis tutorial"); // 获取存储的数据并输出 echo "Stored string in redis:: " . $redis->get("tutorial-name"); ?>

执行脚本,输出结果为:

Connection to server sucessfully 
Stored string in redis:: Redis tutorial

Redis PHP List(列表) 实例

<?php 
   //连接本地的 Redis 服务 
   $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; //存储数据到列表中 $redis->lpush("tutorial-list", "Redis"); $redis->lpush("tutorial-list", "Mongodb"); $redis->lpush("tutorial-list", "Mysql"); // 获取存储的数据并输出 $arList = $redis->lrange("tutorial-list", 0 ,5); echo "Stored string in redis"; print_r($arList); ?>

执行脚本,输出结果为:

Connection to server sucessfully 
Stored string in redis Redis Mongodb Mysql

Redis PHP Keys 实例

<?php 
   //连接本地的 Redis 服务 
   $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; // 获取数据并输出 $arList = $redis->keys("*"); echo "Stored keys in redis:: "; print_r($arList); ?>

执行脚本,输出结果为:

Connection to server sucessfully 
Stored string in redis:: tutorial-name tutorial-list


发布评论
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

PHP mkdir()无写权限的问题解决方法知识解答
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。