redis在php下面的命令大全
这篇文章主要介绍了关于redis在php下面的命令大全,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
redis的任用
应用场景缓存、队列、数据存储,作用于内存,比较容易丢
$user=User::all()->toarray();
string类型只能是单独的string,不能是数组
set 添加 Redis::set('number', 1); Redis::append('number',2); //追加的 dd(Redis::strlen('number')); //返回字符的长度 get 获取值 dd(redis::get('nember')); getset 先获取,完后设置该值 dd(redis::getset('nember','baidu123')); incr 适合做计数器 Redis::incr('number'); Redis::incrBy('number',3); //直接加3 incrByFloat 浮点数字直接加1.5 Redis::set('number', 1); dd(redis::incrByFloat('number',0.03)); exists 判断键值是否存在 dd(redis::exists('key')); //存在是1,不存在是0 mset mget 批量操作 Redis::set('d', 555); redis::mset(['a'=>1,'b'=>2,'c'=>3]); print_r(redis::mget(['a','b','c','d'])); //Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 555 )
list类型 (list push pop llen)
lpus 添加左到右面 redis::del('la'); redis::lpush('la',1); redis::lpush('la',2); redis::lpush('la',3); dd(redis::lrange('la',0,6)); //展示la从0到6 rpush 添加右到左面 redis::rpush('ra',1); redis::rpush('ra',2); redis::rpush('ra',3); dd(redis::lrange('ra',0,6)); dd(redis::lindex('ra',0)); //获取健的值 linsert 在列中插入(这里面的3是只第一个) redis::linsert('ra',"BEFORE",'3','555'); //在ra队列中在3之前插入555 redis::linsert('ra',"AFTER",'3','666'); //在ra队列中在3之后插入666 dd(redis::lrange('ra',0,-1)); lpop 返回并删除列表的第一个元素(队列或秒杀) echo(redis::lpop('ra')); dd(redis::lrange('ra',0,-1)); rpop 返回并删除列表的最后一个元素(队列或秒杀) echo(redis::rpop('ra')); //返回空则列表为空 dd(redis::lrange('ra',0,-1)); blpop brpop 消息队列 redis::lpush('a',54); redis::brpop('a',0); //第二个参数是时间 0是永不阻塞 dd(redis::lrange('a',0,-1)); 如果列表存在,则将字符串值添加到列表头(左侧) redis::lpush('la',5); redis::lpushx('la',6); //右侧是rpush redis::lpush('la',8); dd(redis::lrange('la',0,-1)); lrem 删除指定的键值 redis::lrem('ra',6,1); //lrem('ra',6,1) 删除左到右6个1 redis::lrem('ra',-1,1); //lrem('ra',-1,1) 删除右到左1个1 redis::lrem('ra',0,1); //lrem('ra',0,1) 删除全部1 dd(redis::lrange('ra',0,-1)); lset 修改 使用新值在索引处设置列表。 redis::lset('la',0,'aaaa'); dd(redis::lrange('la',0,-1)); ltrim 修剪现有列表 类似与php substr redis::ltrim('la',0,2); dd(redis::lrange('la',0,-1)); llen 列表的长度 dd(redis::llen('la')); 从列表的尾部弹出一个值,并将其推到另一个列表的前面。同样返回这个值 redis::rPopLPush('la','ra'); //将la的尾部,推送到列表的前面 一般用户队列防止丢失
set类型(sadd scard sismember srem)集合内容不重复
sadd sCard sisMember 添加/求和/是否在集合中 redis::sadd('sa',1); redis::sadd('sa',2); redis::sadd('sa',3); dd(redis::sCard('sa')); //判断集合是否存在 redis::sisMember('sa',1) //存在是1,不存在是0 sdiff 判断两个集合之间的差集 redis::sadd('sb',2); redis::sadd('sb',3); redis::sadd('sb',4); dd(redis::sdiff('sa','sb')); //返回不在sb中,但在sa中的值 smembers 随机删除 redis::spop('sb'); dd(redis::smembers('sb')); srem 指定删除 redis::srem('sb',2); //在集合sb中删除2的值 dd(redis::smembers('sb')); sinter 判断两个集合之间的交集 dd(redis::sinter('sa','sb')); 执行几个集合的交集,并保存为新的集合 redis::sInterStore('sc','sa','sb'); //sa和sb的交集,存于sc中 dd(redis::sMembers('sc')); //输出一个集合 将指定成员从srcKey中的集合移至dstKey处的集合 redis::smove('sa','sb',1); //把sa中的1移到sb中 dd(redis::smembers('sb')); 返回多个集合的联合 dd(redis::sUnion('sa','sb')); 返回联合,并存于一个集合中 redis::sUnionStore('sd','sa','sc'); //把sa和sc的联合返回与sd中 dd(redis::smembers('sd'));
hash(哈希)类型(hset, hget, hlen, hmget)
hset hget hdel 存入/查询/删除 redis::hdel('a'); //必须先删除key为a的健,否则a本身被占用,无法给值 redis::hset('a','aaa','hello'); dd(redis::hget('a','aaa')); hlen 返回键a的长度 dd(redis::hlen('a')); //a数组的下面有两个子集 hexists 判断一个数组中是否包含某个键值 dd(redis::hexists('a','qwe')); //1是ture 0是false hmset hmget 批量存入全部的数组/批量获取 Redis::hmset('bbb', $user['1']); dd(redis::hgetall('a')); hsetnx 给定hash默认值 本身a-aaa有值时候 redis::hsetnx('a','aaa','hello word'); dd(redis::hget('a','aaa')); //hello b-aaa无值的时候 redis::hSetNx('a','bbb','hello word'); dd(redis::hget('a','bbb')); //hello word hkeys 类似array_keys() dd(redis::hkeys('a')); //数组的健和值相互替换 hvals 类似与array_values() dd(redis::hvals('a')); //数组的健变成默认的0、1、2等 hstrlen 相关字段的值的数量 dd(redis::hstrlen('a','bbb')); //返回数组a下面健bbb的值的数量
sort set类型(有序集合)
zadd zrem 添加/删除 redis::zAdd('key1', 1, 'val1'); redis::zAdd('key1', 0, 'val0'); redis::zAdd('key1', 5, 'val5'); redis::zrem('key1','val1'); dd(redis::zRange('key1', 0, -1)); zcard 计算总个数
通用命令
key 模糊搜索 redis::set('user1','my name is good man'); dd(redis::keys('user*')); //返回的是数组,并且是user的key dbsize 计算key总的个数 redis::dbsize(); exists 判断key是否存在 redis::exists('key'); //存在返回1,不存在返回0 del 删除key redis::del('key'); expire key在几秒以后过期 redis::expire('key',10); //key在10秒以后过期. persist 去掉key的过期时间 redis::persist('key'); type key的类型 redis::type('key');
其他特性
publish 消息的发布和订阅 redis::publish('aaa', 'hello, world!aaa'); redis::subscribe(array('chan-1'),'f'); //回调函数 function f($redis, $chan, $msg) { dd($msg); } geo 地理位置的定位 geoadd 添加 redis::geoadd('ggg',112.531212,37.806616,'aaa',112.130619,37.396616,'bbb'); dd(redis::geopos('ggg','beijin')); //ggg为key,aaa与bbb为标识 geodist 计算两地距离 dd(redis::geodist('ggg','aaa','bbb','km')); //计算aaa与bbb的距离,km是单位
1.主从模式
在redis.conf中,添加slaveof ip 端口 可作为从redis,只能读取与同步 slaveof <masterip> <masterport>
2.redis的管道模式 大数据执行文件时候,利用这个传值要减少时间
redis::multi()
3.消息的发布和订阅
相关推荐:
Atas ialah kandungan terperinci redis在php下面的命令大全. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

CakePHP ialah rangka kerja MVC sumber terbuka. Ia menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP mempunyai beberapa perpustakaan untuk mengurangkan beban tugas yang paling biasa.

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data
