Windows系統下PHP使用Redis

下面直接講redis是如何在php中使用的,這裏我選擇的是phpredis擴展。

1. 下載phpredis擴展  

  執行phpinfo()函數,根據下面截圖中的“NTS”和“VCn”選擇對應的壓縮包,https://github.com/phpredis/phpredis/downloads。另外注意,PHP版本也要對應好。

 

2. PHP配置安裝擴展

  首先把壓縮包中的 php_igbinary.dll和php_redis.dll 文件放到PHP安裝目錄的 ext 目錄中

  然後在 php.ini 添加如下配置

extension=php_igbinary.dll
extension=php_redis.dll

3. 重啓apache,執行phpinfo()函數,會發現多了redis的擴展。

 

 4. 開啓Redis服務,測試

 $redis = new Redis();
    //連接redis服務器
    $redis->connect('127.0.0.1', '6379');
    echo "Connection to server sucessfully <br/>";

    //查看服務是否運行
    echo "Server is running: " . $redis->ping();

結果如下,連接redis服務器成功

Connection to server sucessfully 
Server is running: +PONG

至此,我們可以在php中痛痛快快的使用redis了。

$redis = new Redis();
 2     //連接redis服務器
 3     $redis->connect('127.0.0.1', '6379');
 4 
 5 
 6     $key = "key";
 7     $val = "val";
 8 
 9     //redis key操作
10     $redis->exists($key);           //判斷key值是否存在
11     $redis->expire($key, 10);       //設置key在10秒後過期
12 
13     //redis string 字符串
14     $redis->set($key, $val);
15     $redis->incr($key);         //key值+1,除非val是整數,否則函數執行失敗
16     $redis->decr($key);         //key值-1,同上
17     $redis->append($key, "ue"); //追加key值內容
18     $redis->strlen($key);       //返回key值的長度
19 
20     //當第一次設置key值後,key值的數據類型就不能改變了。
21     $redis->del($key);  //刪除key值
22 
23     //redis hash 哈希
24     $redis->hset($key, 'field1', 'val1');   //設置一個key-value鍵值對
25     $redis->hmset($key, array('field2'=>'val2', 'field3'=>'val3'));    //設置多個k-v鍵值對
26     $redis->hget($key, 'field2');           //獲取hash其中的一個鍵值
27     $redis->hmget($key, array('field2', 'field1'));    //獲取hash的多個鍵值
28     $redis->hgetall($key);  //獲取hash中所有的鍵值對
29     $redis->hlen($key);     //獲取hash中鍵值對的個數
30     $redis->hkeys($key);   //獲取hash中所有的鍵
31     $redis->hvals($key);    //獲取hash中所有的值
32     $redis->del($key);  //刪除key值
33 
34     //redis list 列表
35     $index = $start = 0;
36     $redis->lpush($key, 'val1', 'val2');    //在list的開頭添加多個值
37     $redis->lpop($key); //移除並獲取list的第一個元素
38     $redis->rpop($key); //移除並獲取list的最後一個元素
39     $stop = $redis->llen($key) - 1; //獲取list的長度
40     $redis->lindex($key, $index);   //通過索引獲取list元素
41     $redis->lrange($key, $start, $stop);    //獲取指定範圍內的元素
42 
43     $redis->del($key);
44 
45     //redis set 無序集合
46     $redis->sadd($key, 'val1', 'val2'); //向集合中添加多個元素
47     $redis->scard($key);    //獲取集合元素個數
48     $redis->spop($key); //移除並獲取集合內隨機一個元素
49     $redis->srem($key, 'val1', 'val2'); //移除集合的多個元素
50     $redis->sismember($key, 'val1');    //判斷元素是否存在於集合內
51 
52     $redis->del($key);
53     //redis sorted set 有序集合
54     //有序集合裏的元素都和一個分數score關聯,就靠這個分數score對元素進行排序
55     $redis->zadd($key, $score1, $val1, $score2, $val2); //向集合內添加多個元素
56     $redis->zcard($key);    //獲取集合內元素總數
57     $redis->zcount($key, $minScore, $maxScore); //獲取集合內分類範圍內的元素
58     $redis->zrem($key, $member1, $member2); //移除集合內多個元素

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章