3、hash雜湊類型
簡介
hash散列類似於一個小型的Redis資料庫
一個雜湊可以包含多個鍵值對
散列的每個鍵都不能重複,各不相同,無序排列
其值可以是字串或數字值
對於數字值,可以執行自增或自減操作
散列結構
下面的結構中,user代表鍵名,其可以包含多個不同的鍵值對
[ "user":[ "name1":"yanying1", "name2":"yanying2", "name3":"yanying3" ] ]
操作方法
演示(命令列+ PHP演示)
命令行:
首先,我們將一個鍵值對到散列。如果 成功則回傳1;如果鍵已經存在,回傳0
hset hash-key sub-key1 value1 // 返回 1
我們再增加一個不存在的鍵值對
hset hash-key sub-key2 value2 // 返回 1
這個時候,散列中已經存在鍵sub-key1和sub-key2,接下來我們再新增一個相同的鍵sub-key1到散列中,看看會發生什麼:
hset hash-key sub-key1 value1 // 返回 0,由于该键已经存在
下面我們透過hget取得一個給定鍵sub-key1的值。
hget hash-key sub-key1 // "value1"
成功獲取了一個值。我們再取得新增的所有元素看看,剛剛的到底增加了哪幾個值
hgetall hash-key
其結果如下。我們發現,第一個結果為第一個鍵值對的鍵,第二個結果為鍵值對的值,以此類推,每兩個為一組。
"sub-key1""value1""sub-key2""value2"
下面我們試著刪除一個鍵試試,我們會發現如果 該鍵之前存在於散列中,那麼刪除時候則返回1,否則,返回0
hdel hash-key sub-key1 // 该键之前存在于散列,返回1
我們再試著刪除一次sub-key1,發現刪除 不存在的鍵的時候,回傳結果0
hdel hash-key sub-key1
我們再次取得全部鍵值對,看看還剩些什麼。
hgetall hash-key
其結果為,少了兩個結果,畢竟剛剛刪除了一個鍵值對
"sub-key1""value1"
PHP版本演示
第一步,鏈接redis數據庫
$redis = new Redis();$redis->connect('127.0.0.1', 6379);
我們先插入一個鍵值對到hash-key散列。 1代表插入成功;0元素代表已經存在
$redis->hset('hash-key','sub-key1','value1'); // int 1,元素插入成功,之前不存在该键
我們再次插入相同鍵值對
$redis->hset('hash-key','sub-key1','value1'); // int 0,元素插入失败,该键已经存在
為了下面的演示使用,我們繼續插入一些其他的值
$redis->hset('hash-key','sub-key2','value2'); // int 0
下面我們使用hget獲取鍵對應的值。我們試試看sub-key2的值。
$redis->hget('hash-key','sub-key2'); // 'value2'
獲取了一個後,我們在嘗試使用hgetall獲取剛剛插入的全部值,看看裡麵包含哪些鍵值對
$redis->hgetall('hash-key');
獲得結果,是一個包含完整鍵值得數組
array (size=2) 'sub-key1' => string 'value1' (length=6) 'sub-key2' => string 'value2' (length=6)
查看完了所有的鍵值對,我們嘗試刪除其中一個鍵。如果之前鍵存在於雜湊中,則返回1,反之,返回0
$redis->hdel('hash-key','sub-key1'); // 该键之前存在,返回int 1
我們再次嘗試刪除sub-key1鍵,發現其返回0. 則說明該鍵不存在集合中,刪除失敗
$redis->hdel('hash-key','sub-key1'); // 该键不存在,返回int 0
下面我們使用hgetall查看下散列中還剩餘的所有鍵值對
$redis->hgetall('hash-key');
發現,只傳回了包含一個鍵值對的陣列。
array (size=1) 'sub-key2' => string 'value2' (length=6)
原因即是,剛剛sub-key1已經被刪除

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器