亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP+Redis開發的書簽案例實戰詳解

2024-05-05 00:10:14
字體:
來源:轉載
供稿:網友

本文實例講述了PHP+Redis開發的書簽案例。分享給大家供大家參考,具體如下:

redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set 有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎上實現了master-slave(主從)同步。

場景

在項目開發過程中,相信大家都遇到過這樣的場景——一個書籍表,一個書籍標簽表,然后一本書可以有多個標簽,這個場景就和CSDN發布文章時的文章標簽差不多。

問題:如果我要查詢多個標簽共同的書籍,那么必須將表關聯查詢,這樣影響效率。我們可以使用redis來幫忙。

案例思路

在添加書籍的時候,需要添加書籍和標簽,將書籍保存到MySQL中,將標簽保存到redis的set集合中,將每個標簽看成一個set集合,然后每個標簽保存的是書籍的id信息。如果需要查詢多個標簽共同的書籍,只需要將多個集合進行交集操作。

結果圖

PHP,Redis,書簽

項目結構圖

PHP,Redis,書簽

index.html文件

在這個頁面是用來添加書籍的。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head>  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">  <title>Document</title></head><body>  <form action="add.php" method="post">    <p>請輸入書名:<input type="text" name="title" /></p>    <p>請輸入標簽:<input type="text" name="tags" /></p>    <p><input type="submit" value="提交" /></p>  </form></body></html>

add.php文件

這個文件主要處理添加書籍。

首先生成生成自增長的id,用來給書籍的id使用,然后將標簽信息添加到redis中,最后使用pdo將書籍信息添加到數據庫中。

<?php$redis = new Redis();$redis->connect('localhost',6379);//生成自增長的id$bid = $redis->incr('bid');//將標簽信息添加到redis中$tags = explode(',',trim($_POST['tags'],','));foreach($tags as $t){  $redis->sAdd($t,$bid);}//使用pdo將書籍信息添加到數據庫中$dsn = 'mysql:host=localhost;dbname=test';$pdo = new PDO($dsn,'root','1234');$pdo->query('set names utf8');$sql = 'insert into book values(?,?)';$st = $pdo->prepare($sql);$line = $st->execute([$bid,$_POST['title']]);if($line != 0){  echo '添加書籍成功';}

search.php文件

這個文件主要處理搜索界面,也就是上面效果圖的界面。首先創建一個redis對象并進行連接,然后獲取地址欄的標簽,然后將標簽轉換為數組,計算出用戶輸入標簽的數量,因為每個標簽都對應redis中的集合,所以給這幾個集合取交集就可以了。

<?php$redis = new Redis();$redis->connect('localhost',6379);$tags = explode(',',trim($_GET['tags'],','));$len = count($tags);if($len == 1){  var_dump($redis->sMembers($tags[0]));}else if($len == 2){  var_dump($redis->sInter($tags[0],$tags[1]));}else if($len == 3){  var_dump($redis->sInter($tags[0],$tags[1],$tags[2]));}

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产一区二区三区在线观看网站| 亚洲欧美国产精品久久久久久久| 日韩精品免费在线视频| 情事1991在线| 中文.日本.精品| 亚洲精品99久久久久| 中文字幕av一区二区| 日本精品一区二区三区在线| 日本国产一区二区三区| 亚洲人成欧美中文字幕| 久久精品在线视频| 91影视免费在线观看| 国产精品福利片| 成人午夜黄色影院| 91精品国产成人| 午夜精品久久久久久久久久久久| 国产一区二区三区四区福利| 久久精品电影网站| 日韩视频免费观看| 成人黄色免费网站在线观看| 欧美久久精品一级黑人c片| 国产丝袜视频一区| 97精品国产97久久久久久免费| 亚洲欧美日韩直播| 亚洲欧洲视频在线| 欧美裸体xxxx极品少妇软件| 亚洲午夜精品视频| 久久全国免费视频| 国产精品91视频| 精品久久久久久电影| 欧美精品久久一区二区| 欧美精品久久一区二区| 欧美日韩国产激情| 国产精品va在线| 最近的2019中文字幕免费一页| 中文字幕精品一区久久久久| 欧美综合在线观看| 久久精品国产一区| 欧美美女15p| 亚洲美女av在线| 亚洲已满18点击进入在线看片| 伊人久久大香线蕉av一区二区| 97精品在线观看| 久久亚洲精品中文字幕冲田杏梨| 一区二区亚洲精品国产| 亚洲人成电影网站| 日韩高清中文字幕| 欧美一区视频在线| 久久久久成人网| 成人xvideos免费视频| 青青草原成人在线视频| 久久久久久国产精品美女| 国产精品爽爽爽爽爽爽在线观看| 91精品视频免费| 亚洲最大福利视频网站| 成人中文字幕在线观看| 亚洲xxxx视频| 欧美怡红院视频一区二区三区| 欧美成人亚洲成人日韩成人| 亚洲一区亚洲二区亚洲三区| 伦理中文字幕亚洲| 色妞欧美日韩在线| 欧美一区二区三区艳史| 欧美性高跟鞋xxxxhd| 色悠久久久久综合先锋影音下载| 韩国欧美亚洲国产| 欧美精品久久久久久久免费观看| 日韩精品免费看| 日本一区二区三区四区视频| 久久久国产精品免费| 国产成人一区二区三区小说| 免费不卡在线观看av| 日本一欧美一欧美一亚洲视频| 一区二区三区视频在线| 日本亚洲欧洲色α| 国产精品极品美女在线观看免费| 日韩欧美精品在线观看| 国产成人91久久精品| 一色桃子一区二区| 欧美高清videos高潮hd| 黄色精品在线看| 欧美日韩不卡合集视频| 日韩亚洲国产中文字幕| 国产精品黄色av| 中文字幕欧美专区| 欧美一区二区视频97| 亚洲第一精品电影| 亚洲国产日韩欧美在线动漫| 久久久人成影片一区二区三区观看| 狠狠色狠狠色综合日日五| 亚洲变态欧美另类捆绑| 欧美日韩国产在线| 亚洲视频777| 国产一区二区三区高清在线观看| 亚洲大胆人体在线| 日韩最新中文字幕电影免费看| 亚洲第一中文字幕在线观看| 日韩女优在线播放| 77777亚洲午夜久久多人| 日韩av免费在线播放| 国产97在线观看| 亚洲色图国产精品| 久久精品中文字幕一区| 亚洲国产精品久久| 国内揄拍国内精品少妇国语| 91精品国产精品| 色老头一区二区三区在线观看| 国产精品亚洲一区二区三区| 亚洲第一页中文字幕| 成人黄色影片在线| 亚洲欧美综合另类中字| 亚洲成人在线视频播放| 国产精品福利无圣光在线一区| 国产亚洲精品久久久久动| 成人激情视频网| 美女久久久久久久| 亚洲天堂成人在线| 欧美高清理论片| 福利一区视频在线观看| 成人欧美一区二区三区黑人孕妇| 久久精品91久久久久久再现| 亚洲欧美日韩网| 亚洲精品国产精品国自产在线| 91精品国产自产在线观看永久| 色午夜这里只有精品| 国产精品高潮呻吟久久av无限| 欧美一级成年大片在线观看| 国产精品久久久久国产a级| 中文字幕在线国产精品| 日韩大片免费观看视频播放| 欧美亚洲第一区| 国产偷国产偷亚洲清高网站| 川上优av一区二区线观看| 国产精品美女免费视频| 97在线视频免费观看| 久久成人国产精品| 久久香蕉国产线看观看av| 91久久嫩草影院一区二区| 亚洲欧洲中文天堂| 亚洲人成欧美中文字幕| 久久99精品久久久久久噜噜| 国产成人免费91av在线| 国产欧美一区二区白浆黑人| 日韩国产一区三区| www.欧美精品| 日韩欧美大尺度| 中文字幕欧美视频在线| 91理论片午午论夜理片久久| 久操成人在线视频| 亚洲已满18点击进入在线看片| 欧美激情一区二区三区高清视频| 亚洲欧美日韩精品久久奇米色影视| 欧美精品xxx| 国产丝袜高跟一区| zzijzzij亚洲日本成熟少妇| 国产亚洲精品va在线观看| 亚洲精品aⅴ中文字幕乱码| 国产精品第10页| 超碰日本道色综合久久综合| 日韩中文字幕不卡视频| 精品久久久在线观看| 日韩美女视频中文字幕| 亚洲天堂色网站| 九九热视频这里只有精品|