PHP+redis实现的购物车单例类。分享给大家供大家参考,具体如下:
<?php /** * 购物车单例类 * * @author YING * @param void * @return void */ class CartSingleton { //定义一个静态的私有变量 static private $_instance=null; private $redis=null; //私有化的构造方法 private final function __construct() { //实例化 $this->redis=new Redis(); $this->redis->connect('127.0.0.1',6379); } //私有化的克隆方法 private function __clone() { } //公有的静态方法 static public function getInstance() { if(!(self::$_instance instanceof self)){ self::$_instance = new CartSingleton(); } return self::$_instance; } /** * 加入购物车 * * @author YING * @param userId goodsName goodsId 用户id 商品名称 商品id * @return int */ public function addCart($userId,$goodsName,$goodsId) { $hashKey="user_".$userId; //hash键名 $key=$goodsId."_".$goodsName;//键名 //加入 return $this->redis->hIncrBy($hashKey,$key,1); } /** * 单删 * * @author YING * @param userId goodsId * @return */ public function cartDelOne($userId,$goodsId) { $hashKey="user_".$userId; //hash键名 $key=$goodsId;//键名 //删除 return $this->redis->hDel($hashKey,$key); } /** * 清空购物车 * * @author YING * @param userId * @return void */ public function cartDelAll($userId) { $hashKey="user_".$userId; //hash键名 //删除 return $this->redis->del($hashKey); } /** * 购物车列表 * * @author YING * @param userId * @return void */ public function cartList($userId) { $hashKey="user_".$userId; //hash键名 //查询数据 return $this->redis->hGetAll($hashKey); } } //实例化类 $obj=CartSingleton::getInstance();
© 版权声明
本文刊载的所有内容,包括文字、图片、音频、视频、软件、程序、以及网页版式设计等部门来源于互联网,版权均归原作者所有!本网站提供的内容服务于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
联系信息:邮箱aoxolcom@163.com或见网站底部。
联系信息:邮箱aoxolcom@163.com或见网站底部。
THE END
请登录后发表评论
注册
社交帐号登录