mustang/shoppingcart
Composer 安装命令:
composer require mustang/shoppingcart
包简介
thinkphp5.0 购物车基于redis的实现,多存储介质待扩展。
README 文档
README
#mustang/shoppingcart
thinkphp5.0 购物车基于redis的实现,多存储介质待扩展。
##安装方法
composer require mustang/shoppingcart
##在项目中使用shoppingcart
V1.0版本仅更新了以Redis为存储介质的购物车,后期可能扩展其他存储介质。
需要在config.php中配置以下信息
// redis相关配置 'redis' => [ 'host' => '127.0.0.1', 'port' => 6379, 'auth' => '', 'db_id' => 4 ] // 购物车存储介质配置,如不配置默认使用redis。 'cart' => [ 'driver' => 'redis' ]
##"分片"
为处理商城中不止一个购物车的情况,增加了分片的概念。
获取购物车数据
获取用户特定购物车中商品|SKU的ID及数量。
/** * 获取购物车全数据 * 商品数据(商品 id|SKU id)&对应数量 * @param int $uid 用户ID * @param null $zone 分片 * @return array */ ShoppingCart::cartList($uid, $zone=null);
购物车添加/减少商品
特定购物车中针对单个商品的更新数量,数量可增加可减少。
/** * 购物车添加/减少商品 * @param int $gid 商品|sku id * @param int $gnum 操作数量 * @param int $uid 用户id * @param null $zone 分片 * @return bool */ ShoppingCart::cartOper($gid, $gnum, $uid, $zone=null);
更新购物车中单件商品的SKU
如果购物车中使用到了SKU,存储的key实际上是SKU_ID,可能存在以下情况,一个商品的2种SKU同时存在在购物车中,修改其中的某个到另外一个,需要合并数量。
/** * 更新购物车中单件商品的SKU * @param $gid int 目标商品|SKU id * @param $old_gid int 原商品|SKU id * @param $uid int 用户id * @param $zone null 分片 */ ShoppingCart::cartUpdateSku($gid, $old_gid, $uid, $zone=null);
删除购物车中单种商品
从特定购物车中删除单一种商品
/** * 从购物车中删除单种商品 * @param int $gid 商品标识 * @param int $uid 用户id * @param null $zone 分片 */ ShoppingCart::cartDelSingle($gid, $uid, $zone=null);
清空购物车
清空特定购物车中的所有商品
/** * 清空购物车 * @param int $uid 用户id * @param null $zone 分片 */ ShoppingCart::cartClearAll($uid, $zone=null);
购物车是否存在某商品
判断购物车中是否存在某商品或者某商品SKU
/** * 购物车是否存在某商品 * @param $gid int 商品标识 * @param $uid int 用户id * @param $zone null * @return bool */ ShoppingCart::cartExistsGoods($gid, $uid, $zone=null)
该扩展只负责处理购物车数据部分,而不关心操作购物车之前的各种数据校验过程。
mustang/shoppingcart 适用场景与选型建议
mustang/shoppingcart 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 61 次下载、GitHub Stars 达 0, 最近一次更新时间为 2019 年 08 月 28 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 mustang/shoppingcart 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 mustang/shoppingcart 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 61
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-08-28