{"id":1745,"date":"2018-03-14T15:40:33","date_gmt":"2018-03-14T07:40:33","guid":{"rendered":"http:\/\/39.100.100.179\/?p=1745"},"modified":"2018-05-27T19:31:06","modified_gmt":"2018-05-27T11:31:06","slug":"php%e6%93%8d%e4%bd%9credis%e5%ae%9e%e7%8e%b0%e5%be%ae%e4%bf%a1%e5%b0%8f%e6%b8%b8%e6%88%8f%e6%8e%92%e8%a1%8c%e6%a6%9c%e4%b8%80","status":"publish","type":"post","link":"http:\/\/www.u3d8.com\/?p=1745","title":{"rendered":"Php\u64cd\u4f5cRedis\u5b9e\u73b0\u5fae\u4fe1\u5c0f\u6e38\u620f\u6392\u884c\u699c(\u4e00)"},"content":{"rendered":"<p>\u672c\u6559\u7a0b\u662f\u5e94\u5bf9\u5fae\u4fe1\u5c0f\u6e38\u620f\u5f00\u53d1\u7684\u670d\u52a1\u5668\u7aef+\u5ba2\u6237\u7aef\u5168\u56fd\u6392\u884c\u699c\u529f\u80fd<\/p>\n<p>\u8fd9\u4e2a\u5e94\u8be5\u7b97\u4e2a\u7cfb\u5217\u6559\u7a0b\uff0c\u6211\u5148\u4ecb\u7ecd\u4e0b\u8fd9\u4e2a\u7cfb\u5217\u6559\u7a0b\u6240\u5b9e\u73b0\u7684\u5177\u4f53\u529f\u80fd<\/p>\n<h2>\u4e00\u3001\u5177\u4f53\u529f\u80fd<\/h2>\n<ol>\n<li>\u5b9e\u73b0\u670d\u52a1\u5668\u8bb0\u5f55\u73a9\u5bb6\u5fae\u4fe1UserInfo\u6570\u636e<\/li>\n<li>\u5b9e\u73b0\u83b7\u53d6\u6307\u5b9a\u8303\u56f4\u6392\u884c\u6570\u636e<\/li>\n<li>\u5b9e\u73b0\u83b7\u53d6\u6307\u5b9a\u7528\u6237\u6392\u884c<\/li>\n<li>\u5b9e\u73b0\u73a9\u5bb6\u4e0a\u4f20\u5206\u6570<\/li>\n<li>\u5b9e\u73b0\u73a9\u5bb6\u6e38\u620f\u6b21\u6570\u8ba1\u6570<\/li>\n<\/ol>\n<p>\u672c\u6559\u7a0b\u4e0d\u63d0\u4f9bphp\u73af\u5883\u642d\u5efa\u3001redis\u73af\u5883\u642d\u5efa\u7b49\u57fa\u7840\u6559\u7a0b<\/p>\n<p>\u5982\u679c\u672a\u63a5\u89e6\u8fc7php\u7684\u540c\u5b66\uff0c\u9700\u8981\u5148\u81ea\u884c\u4e86\u89e3\u4e0bphp\u53ca\u5176\u73af\u5883\u642d\u5efa<\/p>\n<p>\u4e4b\u524d\u5728<a href=\"http:\/\/www.u3d8.com\/?p=1710\" target=\"_blank\">Php\u64cd\u4f5cMySql\u5b9e\u73b0\u7b80\u5355\u6392\u884c\u699c\uff08Windows\uff09<\/a>\u6559\u7a0b\u4e2d\u6709\u63d0\u4f9bWAMP\u73af\u5883\u5b89\u88c5<\/p>\n<p>\u4e0b\u9762\u5f00\u59cb\u6b63\u5f0f\u6559\u7a0b<\/p>\n<h2>\u4e8c\u3001\u83b7\u53d6\u552f\u4e00\u8eab\u4efd\u6807\u8bc6<\/h2>\n<p>\u552f\u4e00\u8eab\u4efd\u6807\u8bc6\uff0c\u5728\u5fae\u4fe1\u5c0f\u6e38\u620f\u91cc\u5c31\u662f\u7528\u6237openid<\/p>\n<p>\u5982\u679c\u4e4b\u524d\u6ca1\u6709\u83b7\u53d6\u8fc7openid\uff0c\u53ef\u4ee5\u67e5\u770b<a href=\"http:\/\/www.u3d8.com\/?p=1743\" target=\"_blank\">\u901a\u8fc7Php\u83b7\u53d6\u5fae\u4fe1\u5c0f\u6e38\u620fopenid<\/a><\/p>\n<p>\u5982\u679c\u4e0d\u662f\u5fae\u4fe1\u5c0f\u6e38\u620f\u7528\u6237\uff0c\u90a3\u4e48\u53ef\u4ee5\u901a\u8fc7\u4f7f\u7528\u8bbe\u5907id\u6216\u8005\u8d26\u53f7id\u6765\u4f5c\u552f\u4e00\u6807\u8bc6<\/p>\n<h2>\u4e09\u3001\u6dfb\u52a0Redis\u5e38\u7528\u8c03\u7528API\u63a5\u53e3<\/h2>\n<p>\u8fd9\u91cc\u6211\u628a\u6392\u884c\u699c\u7528\u5230\u7684Redis\u63a5\u53e3\uff0c\u5c01\u88c5\u4e86\u7b80\u5355\u7684API<\/p>\n<p>\u65b0\u5efa<strong><em>redis_api.<span class=\"s1\">php\u00a0<\/span><\/em><\/strong><\/p>\n<pre class=\"lang:php decode:true \">&lt;?php         \r\n                                                                                             \r\nclass RedisAPI                                                                               \r\n{                                                                                            \r\nprotected $redis = null;                                                                     \r\npublic function __construct(Redis $r)\r\n{\r\n        $this-&gt;redis = $r;                                                                   \r\n}                                                                                            \r\n                                                                                             \r\npublic function hSet($key, $member, $value)\r\n{\r\n        return $this-&gt;redis-&gt;hSet($key, $member, $value);                                    \r\n}                                                                                            \r\n                                                                                             \r\npublic function hGet($key, $member)\r\n{\r\n        return $this-&gt;redis-&gt;hGet($key, $member);                                            \r\n}                                                                                            \r\n\r\n\/\/ \u83b7\u53d6\u5206\u6570                                                                                           \r\npublic function GetScore($key, $member)\r\n{\r\n        return $this-&gt;redis-&gt;zscore($key, $member);\r\n}                                                                                             \r\n \r\n\/\/ \u8bbe\u7f6e\u5206\u6570                                                                                             \r\npublic function SetScore($key, $score, $member)                                               \r\n{       \r\n        $histroyScore = $this-&gt;GetScore($key, $member);                                       \r\n        if($histroyScore == null || $histroyScore &lt; $score)                                   \r\n        {                                                                                     \r\n                $this-&gt;redis-&gt;zAdd($key, $score, $member);                                    \r\n                return $score;                                                                \r\n        }                                                                                     \r\n        return $histroyScore;                                                                 \r\n}                                                                                             \r\n\r\n\/\/ \u83b7\u53d6\u6307\u5b9a\u8303\u56f4\u6392\u884c\u6570\u636e                                                                                              \r\npublic function GetRevRange($key, $beginIndex, $endIndex, $withScore)                         \r\n{       \r\n        return $this-&gt;redis-&gt;zrevrange($key, $beginIndex, $endIndex, $withScore);\r\n}                                                                                             \r\n  \r\n\/\/ \u83b7\u53d6\u6307\u5b9a\u6210\u5458\u6392\u884c       \r\npublic function GetRevRank($key, $member)                                                    \r\n{                                                                                            \r\n        return $this-&gt;redis-&gt;zrevrank($key, $member);                                        \r\n}                                                                                            \r\n\r\n\/\/ \u8bbe\u7f6e\u6b21\u6570\r\npublic function SetTimes($key, $member)                                                      \r\n{                                                                                            \r\n        $lastTimes = $this-&gt;hGet($key, $member);                                             \r\n        if($lastTimes == null)                                                               \r\n        {                                                                                    \r\n                $lastTimes = 0;                                                              \r\n        }                                                                                    \r\n        $newTimes = $lastTimes + 1;                                                          \r\n        $this-&gt;redis-&gt;hSet($key, $member, $newTimes);                                        \r\n        return $newTimes;                                                                    \r\n}                                                                                            \r\n\r\n\r\n}<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u672c\u6559\u7a0b\u662f\u5e94\u5bf9\u5fae\u4fe1\u5c0f\u6e38\u620f\u5f00\u53d1\u7684\u670d\u52a1\u5668\u7aef+\u5ba2\u6237\u7aef\u5168\u56fd\u6392\u884c\u699c\u529f\u80fd \u8fd9\u4e2a\u5e94\u8be5\u7b97\u4e2a\u7cfb\u5217\u6559\u7a0b &hellip; <a href=\"http:\/\/www.u3d8.com\/?p=1745\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":1746,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[103,343],"tags":[357,363],"_links":{"self":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts\/1745"}],"collection":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1745"}],"version-history":[{"count":1,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts\/1745\/revisions"}],"predecessor-version":[{"id":1747,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts\/1745\/revisions\/1747"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/media\/1746"}],"wp:attachment":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1745"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1745"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1745"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}