摘要:應(yīng)用場(chǎng)景適合存儲(chǔ)結(jié)構(gòu)化的數(shù)據(jù)例如一個(gè)用戶的姓名生日等數(shù)據(jù),如果使用存儲(chǔ),就要轉(zhuǎn)換成字符串形式等,存儲(chǔ)和修改都會(huì)很麻煩,但是可以很方便的實(shí)現(xiàn)。可以參考利用存儲(chǔ)節(jié)約內(nèi)存這篇文章。
Hash(哈希)
Hash 是一個(gè) String 類(lèi)型的 field 和value 的映射表。每個(gè) Hash 可以存儲(chǔ) 232 - 1 鍵值對(duì) (40多億)。
應(yīng)用場(chǎng)景 Hash 適合存儲(chǔ)結(jié)構(gòu)化的數(shù)據(jù)例如一個(gè)用戶的姓名、生日等數(shù)據(jù),如果使用 kye-value 存儲(chǔ),就要轉(zhuǎn)換成字符串形式(json 等),存儲(chǔ)和修改都會(huì)很麻煩,但是 Hash 可以很方便的實(shí)現(xiàn)。
Hash 可以節(jié)省內(nèi)存由于Hash結(jié)構(gòu)會(huì)在單個(gè)Hash元素在不足一定數(shù)量時(shí)進(jìn)行壓縮存儲(chǔ),所以可以大量節(jié)約內(nèi)存。
可以參考 Redis 利用Hash存儲(chǔ)節(jié)約內(nèi)存 這篇文章。
實(shí)例hSet($redisKey, "name", $userName);// 設(shè)置key中的field值為value echo $redis->hGet($redisKey, "name") . "
";// 獲取key中field的值 kobe $redis->hSetNx($redisKey, "name", "Gasol");// field不存在時(shí),才能設(shè)置 echo $redis->hGet($redisKey, "name") . "
";// 獲取key中field的值 kobe $flag = $redis->hExists($redisKey, "name");// key中field是否存在 print_r($flag);// 1 echo "
"; $redis->hSet($redisKey, "number", $userNumber); $redis->hDel($redisKey, "number");// 刪除key中field echo $redis->hGet($redisKey, "number");// 無(wú)數(shù)據(jù) $redis->hMset($redisKey, array("age" => $userAge, "team" => $userTeam));// 批量存儲(chǔ)多個(gè)field和value print_r($redis->hMGet($redisKey, array("age", "team")));// 批量獲取多個(gè)field的值 Array ( [age] => 39 [team] => 湖人隊(duì) ) echo "
"; echo $redis->hLen($redisKey) . "
";// 獲取key中有多少field 3 $redis->hSet($redisKey, "score", 2);// 設(shè)置value為數(shù)值 echo $redis->hGet($redisKey, "score") . "
";// 2 $redis->hIncrBy($redisKey, "score", 3);// 為數(shù)值增量 echo $redis->hGet($redisKey, "score") . "
";// 5 print_r($redis->hGetAll($redisKey));// 獲取key中的所有field和value Array ( [name] => kobe [age] => 39 [team] => 湖人隊(duì) [score] => 5 ) echo "
"; print_r($redis->hKeys($redisKey));// 獲取key中的所有field Array ( [0] => name [1] => age [2] => team [3] => score ) echo "
"; print_r($redis->hVals($redisKey));// 獲取key中的所有value Array ( [0] => kobe [1] => 39 [2] => 湖人隊(duì) [3] => 5 ) echo "
";
參考資料:菜鳥(niǎo)教程。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/29947.html
摘要:導(dǎo)語(yǔ)有一些很方面的擴(kuò)展可以使用,下面使用管理器。安裝其實(shí)步驟很簡(jiǎn)單的,按照官方文檔很快就好按照使用兩步就安裝好了,網(wǎng)址是,看下官方配圖數(shù)據(jù)庫(kù)選擇配置信息命令行都支持,很不錯(cuò)。更多的擴(kuò)展,可以查看下方鏈接。 導(dǎo)語(yǔ) laravel-admin 有一些很方面的擴(kuò)展可以使用,下面使用Redis 管理器。 安裝 其實(shí)步驟很簡(jiǎn)單的,按照官方文檔很快就好 composer 按照 composer ...
摘要:在這里使用學(xué)而思網(wǎng)校的錄像設(shè)備,記錄每天學(xué)習(xí)的內(nèi)容閆昌李樂(lè)階段李樂(lè)李樂(lè)李樂(lè)李樂(lè)李樂(lè)李樂(lè)馬運(yùn)運(yùn)李樂(lè)李樂(lè)李樂(lè)源碼集群閆昌源碼閆昌源碼主從復(fù)制李樂(lè)源碼施洪寶源碼施洪寶韓天 在這里使用學(xué)而思網(wǎng)校的錄像設(shè)備,記錄每天學(xué)習(xí)的內(nèi)容: 2019-06-24 ~ 2019-06-28 06-27 nginx by 閆昌 06-26 nginx module by 李樂(lè) 06-25 nginx http ...
摘要:本博客貓叔的博客,轉(zhuǎn)載請(qǐng)申明出處前言本系列整理出于深度歷險(xiǎn)核心原理與應(yīng)用實(shí)踐一書(shū),摘抄整理讀后感與總結(jié)。好的程序員都會(huì)說(shuō)說(shuō)能做什么呢記錄帖子的點(diǎn)贊數(shù)評(píng)論數(shù)和點(diǎn)擊數(shù)記錄用戶的帖子列表排序,便于快速顯示用戶的帖子列表記錄帖子的標(biāo)題摘要作者和封面 本博客 貓叔的博客,轉(zhuǎn)載請(qǐng)申明出處 前言 本系列整理出于《Redis深度歷險(xiǎn):核心原理與應(yīng)用實(shí)踐》一書(shū),摘抄整理讀后感與總結(jié)。 好的程序員都會(huì)Re...
閱讀 2401·2023-04-26 02:54
閱讀 2326·2021-10-14 09:43
閱讀 3376·2021-09-22 15:19
閱讀 2851·2019-08-30 15:44
閱讀 2711·2019-08-30 12:54
閱讀 992·2019-08-29 18:43
閱讀 1943·2019-08-29 17:12
閱讀 1337·2019-08-29 16:40