IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Redis学习笔记-PHP安装redis扩展以及使用 -> 正文阅读

[大数据]Redis学习笔记-PHP安装redis扩展以及使用

安装redis扩展

  • 源码安装
# wget http://download.redis.io/releases/redis-6.0.8.tar.gz
# tar xzf redis-6.0.8.tar.gz
# cd redis-6.0.8
# make
  • perl 安装
perl install redis

安装后记得修改php.ini设置 php -m 查看是否扩展安装成功

在这里插入图片描述

启动redis-server

[root@VM_0_16_centos bin]# ./redis-server ../etc/redis.conf  #后面带上配置文件

php连接redis

<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
echo $redis->ping(); #给redis-server发送ping  这里返回1 说明连接成功
$redis->set("a",2); # 设置字符串类型
echo $redis->get("a"); #获得字符串类型
  • 字符串操作
<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping
$redis->set("a",1);#设置key值
$redis->get("a");#获取指定key值
$redis->append("a",2); #append
$redis->get("a");
$redis->incrby("a",1);
echo $redis->get("a");
  • 列表操作(lists)
<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping

$redis->lpush("list",1); #入栈 从左
$redis->lpop("list");#弹出  从左

在这里插入图片描述

  • hashes
<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping

$redis->hset("user","name","xiaoming"); #入栈 从左
echo $redis->hget("user","name");#弹出  从左

在这里插入图片描述

  • 集合(set)
<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping

$redis->sadd("user",1);
$redis->sadd("user",2);   
$redis->sadd("user",3); 
echo $redis->scard("user");

==还不能使用user当key,这样会获取不到值 ==
在这里插入图片描述

  • 有序集合(ZSET)

就是带score的集合哦

<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping

$redis->zadd("zset",100,"xiaoming"); 
echo $redis->zcount("zset",1,100);

在这里插入图片描述

  • geo (地理位置)

可以存储地理位置信息。

<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping

$redis->geoadd("city",112.59,28.12,"changsha"); ###这里注意有三个参数
$redis->geoadd("city",114.06,22.32,"shenzhen"); 
$redis->geopos("shenzhen"); 
echo $redis->geodist("city","changsha","shenzhen","km");##计算长沙到深圳的直线距离。

在这里插入图片描述

  • Hyperloglog

HyperLogLog 是一种用于计算唯一事物的概率数据结构(从技术上讲,这称为估计集合的基数 (不重复的数的数量)
可以统计网站uv 存在一定误差

<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping

$clinet_ip = "22.22.33.33";
$redis->pfadd("uv",array($clinet_ip));
$clinet_ip = "22.22.33.34";
$redis->pfadd("uv",array($clinet_ip));
$clinet_ip = "22.22.33.33";
$redis->pfadd("uv",array($clinet_ip));
echo "uv is ".$redis->pfcount("uv");
?>
  • Bitmaps(位图)

以0和1来保存实际数据 适合做签到统计,关注统计 能够以0和1来代表的一类数据
位图不是实际的数据类型,而是在 String 类型上定义的一组面向位的操作。由于字符串是二进制安全的 blob,并且它们的最大长度为 512 MB,因此它们适合设置最??多 2^32 个不同的位。

<?php
$redis = new Redis(); #创建redis对象
$redis->connect('127.0.0.1',6379); # 连接redis  默认空密码情况 。有密码
if(!$redis->ping()) echo "连接redis失败";#ping
$redis->setbit("qiandao","1",0);
$redis->setbit("qiandao","2",1);
echo $redis->getbit("qiandao",2);#查看第二天签到情况  key里面可以加上名字啥的 这样直接可以定位某个人的签到情况。

php操作使用redis是非常简单的,只要创建好了redis对象,后面使用的函数和redis的命令一样,使用小写即可。
在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-01-03 16:10:38  更:2022-01-03 16:12:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 13:50:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码