Home Backend Development PHP Tutorial redis php 实例一

redis php 实例一

Jun 23, 2016 pm 01:51 PM
php redis Example


   /**
    * Redis  学习笔记
    */
    //echo 8%(-2); //print 0

     /**
      链接一个redis实例
      return 链接成功返回TRUE 否则返回 false
     */
    $redis = new Redis();
    $result = $redis->connect('127.0.0.1',6379);
    if($result){
      echo "redis conn is success";
    }else{
        echo "redis conn is fail";
    }
   echo '


';
   /**
   设置key和value的值及读取设置的key和value
   */
    $result = $redis->set('test',"hello word redis");  
    var_dump($result).'
';    //结果:bool(true)  
    $result = $redis->get('test');  
    var_dump($result).'
';   //结果:string(16) "hello word redis"  
    $redis->delete('test');//将redis存入内存的键test删除
    $result = $redis->get('test'); //由于内存中已近删除,所以结果 boolean false
    var_dump($result).'
';

    /**
     redis 判断键是否存在
    */
     $seting = $redis->set("demo",'redis key exists ?');
     var_dump($seting).'
'; //boolean true
     $exists = $redis->exists('demo');
     var_dump($exists).'
'; //boolean true

     /**
     decr

    描述:数字递减存储键值。
    参数:key value:将被添加到键的值
    返回值:INT the new value
    incr
    描述:数字递减存储键值。
    参数:key value:将被添加到键的值
    返回值:INT the new value
     */

     $redis->set('test',"100");  
     var_dump($redis->incr("test")).'
';;  //结果:int(101)  
     var_dump($redis->incr("test")).'
';;  //结果:int(102)

     $redis->set('test1',"10");
     var_dump($redis->decr("test1")).'
';;  //结果:int(9)  
     var_dump($redis->decr("test1")).'
';;  //结果:int(8)

  /**
    getMultiple

    描述:取得所有指定键的值。如果一个或多个键不存在,该数组中该键的值为假
    参数:其中包含键值的列表数组
    返回值:返回包含所有键的值的数组
  */
    $arr = array('136502993','zhuwawa');
    $int = 100;
    $string = 'my love....';
    $redis->set('demo2',$arr);
    $redis->set('demo3',$int);
    $redis->set('demo4',$string);

    $result1 = $redis->getMultiple(array('demo2','demo3','demo4'));
    echo '
';  <br>     var_dump($result1).'<br>';  <br>    /**  <br>        lpush  <br>     将一个或多个值 value 插入到列表 key 的表头  <br>  <br>  <br>     描述:由列表头部添加字符串值。如果不存在该键则创建该列表。如果该键存在,而且不是一个列表,返回FALSE。  <br>     参数:key,value  <br>     返回值:成功返回数组长度,失败false  <br>     */  <br>     $redis->delete('test');    <br>     var_dump($redis->lpush("test","111")).'<br>';   //结果:int(1)    <br>     var_dump($redis->lpush("test","222")).'<br>';   //结果:int(2)  <br>     /**  <br>     rpush  <br>  <br>     描述:由列表尾部添加字符串值。如果不存在该键则创建该列表。如果该键存在,而且不是一个列表,返回FALSE。  <br>     参数:key,value  <br>     返回值:成功返回数组长度,失败false  <br>     */  <br>     $redis->delete('test');    <br>     var_dump($redis->lpush("test","111")).'<br>';  //结果:int(1)    <br>     var_dump($redis->lpush("test","222")).'<br>';   //结果:int(2)    <br>     var_dump($redis->rpush("test","333")).'<br>';   //结果:int(3)    <br>     var_dump($redis->rpush("test","444")).'<br>';   //结果:int(4)  <br>  <br>     /**  <br>     lpop  <br>  <br>     描述:返回和移除列表的第一个元素  <br>     参数:key  <br>     返回值:成功返回第一个元素的值 ,失败返回false  <br>     */  <br>     $redis->delete('test');    <br>     $redis->lpush("test","111");    <br>     $redis->lpush("test","222");    <br>     $redis->rpush("test","333");    <br>     $redis->rpush("test","444");    <br>     var_dump($redis->lpop("test")).'<br>';  //结果:string(3) "222"    <br>  <br>     /**  <br>     rpop  <br>  <br>     描述:返回和移除列表的最后一个元素  <br>     参数:key  <br>     返回值:成功返回最后一个元素的值 ,失败返回false  <br>     */  <br>  <br>     $redis->delete('test');    <br>     $redis->lpush("test","111");    <br>     $redis->lpush("test","222");    <br>     $redis->rpush("test","333");    <br>     $redis->rpush("test","444");    <br>     var_dump($redis->rpop("test")).'<br>';  //结果:string(3) "444"    <br>      <br>    /**  <br>        lsize,llen  <br>  <br>     描述:返回的列表的长度。如果列表不存在或为空,该命令返回0。如果该键不是列表,该命令返回FALSE。  <br>     参数:Key  <br>     返回值:成功返回数组长度,失败false  <br>    */  <br>     $redis->delete('test');    <br>     $redis->lpush("test","111");    <br>     $redis->lpush("test","222");    <br>     $redis->rpush("test","333");    <br>     $redis->rpush("test","444");    <br>     var_dump($redis->lsize("test")).'<br>'; //结果:int(4)  <br>      <br>    /**  <br>     lget  <br>  <br>     描述:返回指定键存储在列表中指定的元素。 0第一个元素,1第二个… -1最后一个元素,-2的倒数第二…错误的索引或键不指向列表则返回FALSE。  <br>     参数:key index  <br>     返回值:成功返回指定元素的值,失败false  <br>    */  <br>  <br>     $redis->delete('test');    <br>     $redis->lpush("test","111");    <br>     $redis->lpush("test","222");    <br>     $redis->rpush("test","333");    <br>     $redis->rpush("test","444");    <br>     var_dump($redis->lget("test",3)).'<br>';  //结果:string(3) "444"    <br>       <br>     /**  <br>     lset  <br>  <br>     描述:为列表指定的索引赋新的值,若不存在该索引返回false.  <br>     参数:key index value  <br>     返回值:成功返回true,失败false  <br>     */  <br>  <br>     $redis->delete('test');    <br>     $redis->lpush("test","111");    <br>     $redis->lpush("test","222");    <br>     var_dump($redis->lget("test",1)).'<br>';  //结果:string(3) "111"    <br>     var_dump($redis->lset("test",1,"333")).'<br>';  //结果:bool(true)    <br>     var_dump($redis->lget("test",1)).'<br>';  //结果:string(3) "333"  <br>  <br>  <br>        /**  <br>     lgetrange  <br>  <br>     描述:  <br>     返回在该区域中的指定键列表中开始到结束存储的指定元素,lGetRange(key, start, end)。0第一个元素,1第二个元素… -1最后一个元素,-2的倒数第二…  <br>     参数:key start end  <br>     返回值:成功返回查找的值,失败false  <br>        */  <br>  <br>     $redis->delete('test');    <br>     $redis->lpush("test","111");    <br>     $redis->lpush("test","222");    <br>     print_r($redis->lgetrange("test",0,-1));  //结果:Array ( [0] => 222 [1] => 111 )  <br>  <br>  <br>        /**  <br>     lremove  <br>  <br>     描述:从列表中从头部开始移除count个匹配的值。如果count为零,所有匹配的元素都被删除。如果count是负数,内容从尾部开始删除。  <br>     参数:key count value  <br>     返回值:成功返回删除的个数,失败false  <br>        */  <br>  <br>     $redis->delete('test');    <br>     $redis->lpush('test','a');    <br>     $redis->lpush('test','b');    <br>     $redis->lpush('test','c');    <br>     $redis->rpush('test','a');    <br>     print_r($redis->lgetrange('test', 0, -1)); //结果:Array ( [0] => c [1] => b [2] => a [3] => a )    <br>     var_dump($redis->lremove('test','a',2));   //结果:int(2)    <br>     print_r($redis->lgetrange('test', 0, -1)); //结果:Array ( [0] => c [1] => b )  <br>  <br>  <br>     /**  <br>     sadd  <br>  <br>     描述:为一个Key添加一个值。如果这个值已经在这个Key中,则返回FALSE。  <br>     参数:key value  <br>     返回值:成功返回true,失败false  <br>  <br>     */  <br>     $redis->delete('test');    <br>     var_dump($redis->sadd('test','111'));   //结果:bool(true)    <br>     var_dump($redis->sadd('test','333'));   //结果:bool(true)    <br>     print_r($redis->sort('test')); //结果:Array ( [0] => 111 [1] => 333 )  <br>  <br>        /**  <br>  <br>     sremove  <br>  <br>     描述:删除Key中指定的value值  <br>     参数:key member  <br>     返回值:true or false  <br>        */  <br>     $redis->delete('test');    <br>     $redis->sadd('test','111');    <br>     $redis->sadd('test','333');    <br>     $redis->sremove('test','111');    <br>     print_r($redis->sort('test'));    //结果:Array ( [0] => 333 )    <br>  <br>  <br>     /**  <br>  <br>     smove  <br>  <br>     描述:将Key1中的value移动到Key2中  <br>     参数:srcKey dstKey member  <br>     返回值:true or false  <br>     */  <br>     $redis->delete('test');    <br>     $redis->delete('test1');    <br>     $redis->sadd('test','111');    <br>     $redis->sadd('test','333');    <br>     $redis->sadd('test1','222');    <br>     $redis->sadd('test1','444');    <br>     $redis->smove('test',"test1",'111');    <br>     print_r($redis->sort('test1'));    //结果:Array ( [0] => 111 [1] => 222 [2] => 444 )  ;  <br>  <br>     /**  <br>  <br>     scontains  <br>  <br>     描述:检查集合中是否存在指定的值。  <br>     参数:key value  <br>     返回值:true or false  <br>     */  <br>     $redis->delete('test');    <br>     $redis->sadd('test','111');    <br>     $redis->sadd('test','112');    <br>     $redis->sadd('test','113');    <br>     var_dump($redis->scontains('test', '111')); //结果:bool(true)  <br>  <br>     /**  <br>  <br>     ssize  <br>  <br>     描述:返回集合中存储值的数量  <br>     参数:key  <br>     返回值:成功返回数组个数,失败0  <br>     */  <br>     $redis->delete('test');    <br>     $redis->sadd('test','111');    <br>     $redis->sadd('test','112');    <br>     echo $redis->ssize('test');   //结果:2    <br>  <br>  <br>  <br>     /**  <br>  <br>     spop  <br>  <br>     描述:随机移除并返回key中的一个值  <br>     参数:key  <br>     返回值:成功返回删除的值,失败false  <br>     */  <br>     $redis->delete('test');    <br>     $redis->sadd("test","111");    <br>     $redis->sadd("test","222");    <br>     $redis->sadd("test","333");    <br>     var_dump($redis->spop("test"));  //结果:string(3) "333"     <br>  <br>     /**  <br>  <br>     sinter  <br>  <br>     描述:返回一个所有指定键的交集。如果只指定一个键,那么这个命令生成这个集合的成员。如果不存在某个键,则返回FALSE。  <br>     参数:key1, key2, keyN  <br>     返回值:成功返回数组交集,失败false  <br>     */  <br>     $redis->delete('test');    <br>     $redis->delete('test');    <br>     $redis->sadd("test","111");    <br>     $redis->sadd("test","222");    <br>     $redis->sadd("test","333");    <br>     $redis->sadd("test1","111");    <br>     $redis->sadd("test1","444");    <br>     var_dump($redis->sinter("test","test1"));  //结果:array(1) { [0]=> string(3) "111" }    <br>  <br>  <br>     /**  <br>     sinterstore  <br>  <br>     描述:执行sInter命令并把结果储存到新建的变量中。  <br>     参数:  <br>     Key: dstkey, the key to store the diff into.  <br>     Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.  <br>     返回值:成功返回,交集的个数,失败false  <br>     */  <br>  <br>     $redis->delete('test');    <br>     $redis->sadd("test","111");    <br>     $redis->sadd("test","222");    <br>     $redis->sadd("test","333");    <br>     $redis->sadd("test1","111");    <br>     $redis->sadd("test1","444");    <br>     var_dump($redis->sinterstore('new',"test","test1"));  //结果:int(1)    <br>     var_dump($redis->smembers('new'));  //结果:array(1) { [0]=> string(3) "111" }  <br>  <br>  <br>     /**  <br>     sunion  <br>  <br> 描述:  <br> 返回一个所有指定键的并集  <br> 参数:  <br> Keys: key1, key2, … , keyN  <br> 返回值:成功返回合并后的集,失败false  <br>     */  <br> $redis->delete('test');    <br> $redis->sadd("test","111");    <br> $redis->sadd("test","222");    <br> $redis->sadd("test","333");    <br> $redis->sadd("test1","111");    <br> $redis->sadd("test1","444");    <br> print_r($redis->sunion("test","test1"));  //结果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 )  <br>  <br>  <br>  <br>  <br>     /**  <br> sunionstore  <br>  <br> 描述:执行sunion命令并把结果储存到新建的变量中。  <br> 参数:  <br> Key: dstkey, the key to store the diff into.  <br> Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.  <br> 返回值:成功返回,交集的个数,失败false  <br>     */  <br> $redis->delete('test');    <br> $redis->sadd("test","111");    <br> $redis->sadd("test","222");    <br> $redis->sadd("test","333");    <br> $redis->sadd("test1","111");    <br> $redis->sadd("test1","444");    <br> var_dump($redis->sinterstore('new',"test","test1"));  //结果:int(4)    <br> print_r($redis->smembers('new'));  //结果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 )  <br>  <br>  <br>  <br>  <br>     /**  <br> 描述:返回第一个集合中存在并在其他所有集合中不存在的结果  <br> 参数:Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis.  <br> 返回值:成功返回数组,失败false  <br>     */  <br> $redis->delete('test');    <br> $redis->sadd("test","111");    <br> $redis->sadd("test","222");    <br> $redis->sadd("test","333");    <br> $redis->sadd("test1","111");    <br> $redis->sadd("test1","444");    <br> print_r($redis->sdiff("test","test1"));  //结果:Array ( [0] => 222 [1] => 333 )    <br>  <br>  <br>  <br>  <br>     /**  <br> sdiffstore  <br>  <br> 描述:执行sdiff命令并把结果储存到新建的变量中。  <br> 参数:  <br> Key: dstkey, the key to store the diff into.  <br> Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis  <br> 返回值:成功返回数字,失败false  <br>     */  <br> $redis->delete('test');    <br> $redis->sadd("test","111");    <br> $redis->sadd("test","222");    <br> $redis->sadd("test","333");    <br> $redis->sadd("test1","111");    <br> $redis->sadd("test1","444");    <br> var_dump($redis->sdiffstore('new',"test","test1"));  //结果:int(2)    <br> print_r($redis->smembers('new'));  //结果:Array ( [0] => 222 [1] => 333 );  <br>  <br>  <br> /**  <br> smembers, sgetmembers  <br>  <br> 描述:  <br> 返回集合的内容  <br> 参数:Key: key  <br> 返回值:An array of elements, the contents of the set.  <br> */  <br>  <br> $redis->delete('test');    <br> $redis->sadd("test","111");    <br> $redis->sadd("test","222");    <br> print_r($redis->smembers('test'));  //结果:Array ( [0] => 111 [1] => 222 )  <br>  <br>     ?> 
Copy after login
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP and Python: Comparing Two Popular Programming Languages PHP and Python: Comparing Two Popular Programming Languages Apr 14, 2025 am 12:13 AM

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

The Future of PHP: Adaptations and Innovations The Future of PHP: Adaptations and Innovations Apr 11, 2025 am 12:01 AM

The future of PHP will be achieved by adapting to new technology trends and introducing innovative features: 1) Adapting to cloud computing, containerization and microservice architectures, supporting Docker and Kubernetes; 2) introducing JIT compilers and enumeration types to improve performance and data processing efficiency; 3) Continuously optimize performance and promote best practices.

PHP vs. Python: Understanding the Differences PHP vs. Python: Understanding the Differences Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHP is suitable for web development, with simple syntax and high execution efficiency. 2. Python is suitable for data science and machine learning, with concise syntax and rich libraries.

PHP's Current Status: A Look at Web Development Trends PHP's Current Status: A Look at Web Development Trends Apr 13, 2025 am 12:20 AM

PHP remains important in modern web development, especially in content management and e-commerce platforms. 1) PHP has a rich ecosystem and strong framework support, such as Laravel and Symfony. 2) Performance optimization can be achieved through OPcache and Nginx. 3) PHP8.0 introduces JIT compiler to improve performance. 4) Cloud-native applications are deployed through Docker and Kubernetes to improve flexibility and scalability.

PHP: A Key Language for Web Development PHP: A Key Language for Web Development Apr 13, 2025 am 12:08 AM

PHP is a scripting language widely used on the server side, especially suitable for web development. 1.PHP can embed HTML, process HTTP requests and responses, and supports a variety of databases. 2.PHP is used to generate dynamic web content, process form data, access databases, etc., with strong community support and open source resources. 3. PHP is an interpreted language, and the execution process includes lexical analysis, grammatical analysis, compilation and execution. 4.PHP can be combined with MySQL for advanced applications such as user registration systems. 5. When debugging PHP, you can use functions such as error_reporting() and var_dump(). 6. Optimize PHP code to use caching mechanisms, optimize database queries and use built-in functions. 7

PHP vs. Other Languages: A Comparison PHP vs. Other Languages: A Comparison Apr 13, 2025 am 12:19 AM

PHP is suitable for web development, especially in rapid development and processing dynamic content, but is not good at data science and enterprise-level applications. Compared with Python, PHP has more advantages in web development, but is not as good as Python in the field of data science; compared with Java, PHP performs worse in enterprise-level applications, but is more flexible in web development; compared with JavaScript, PHP is more concise in back-end development, but is not as good as JavaScript in front-end development.

The Enduring Relevance of PHP: Is It Still Alive? The Enduring Relevance of PHP: Is It Still Alive? Apr 14, 2025 am 12:12 AM

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.

PHP: The Foundation of Many Websites PHP: The Foundation of Many Websites Apr 13, 2025 am 12:07 AM

The reasons why PHP is the preferred technology stack for many websites include its ease of use, strong community support, and widespread use. 1) Easy to learn and use, suitable for beginners. 2) Have a huge developer community and rich resources. 3) Widely used in WordPress, Drupal and other platforms. 4) Integrate tightly with web servers to simplify development deployment.

See all articles