bahaaalhagar / shoppingcart
Laravel 简单购物车包
Requires
- php: ~5.6|~7.0
- illuminate/console: ~5
- illuminate/filesystem: ~5
- illuminate/support: ~5.1
Requires (Dev)
- phpunit/phpunit: >=5.4.3
- squizlabs/php_codesniffer: ^2.3
This package is not auto-updated.
Last update: 2024-09-23 15:25:43 UTC
README
为 Laravel 实现的一个简单的 ShoppingCart。
安装
通过 Composer 安装此包。
composer require BahaaAlhagar/ShoppingCart
如果您使用的是 Laravel 5.5,这样就完成了。如果您使用的是 Laravel 5.4 或更低版本,那么您需要在您的应用程序中注册包的服务提供者和别名。打开 config/app.php
文件。向 providers
数组添加新行
BahaaAlhagar\ShoppingCart\ShoppingCartServiceProvider::class,
并向 aliases
数组添加新行
'Cart' => BahaaAlhagar\ShoppingCart\Facades\Cart::class,
使用方法
ShoppingCart 提供以下方法供您使用
Cart::add()
向购物车添加项目非常简单,您只需使用 add()
方法,它接受各种参数。
在其最基本的形式中,您可以指定产品模型、要添加到购物车的数量($qty)。请注意,产品模型必须有一个价格列。
Cart::add($productModel, $qty);
如果没有指定 $qty,购物车将假设它是1个项目。
作为可选的第三个参数,您可以传递选项,这样您就可以添加具有相同 ID 的多个项目,但具有不同的尺寸或颜色等。
Cart::add($productModel, $qty, ['size' => 'large', 'color' => 'black']);
add()
方法将返回添加到购物车中的项目的 CartItem 数组。
Cart::modify()
要修改购物车中的项目,您首先需要项目的唯一索引。
唯一索引是项目在购物车模型项目数组中的偏移量。
接下来,您可以使用 modify()
方法来修改它。
如果您只想修改数量,则将唯一索引和新数量传递给修改方法
$uinqueIndex = '20185a4530208f76b2ef3eb95307a021'; Cart::modify($uinqueIndex, 2); // Will modify the quantity
Cart::reduceOneItem()
要减少特定购物车项目的数量,您首先需要项目的唯一索引。
然后
$uinqueIndex = '20185a4530208f76b2ef3eb95307a021'; Cart::reduceOneItem($uinqueIndex); // will reduce item quantity by 1
Cart::remove()
要从购物车中删除项目,您还需要项目的唯一索引。您只需将此唯一索引传递给 remove()
方法,它就会从购物车中删除项目。
$uniqueIndex = '20185a4530208f76b2ef3eb95307a021'; Cart::remove($uniqueIndex);
Cart::getContent()
当然,您也想获取购物车的商品内容。这就是您将使用 getContent
方法的地方。此方法将返回一个 Cart 模型,您可以迭代并显示给您的客户。
Cart::getContent();
Cart::destroy()
如果您想要完全删除购物车的内容,可以在购物车上调用 destroy 方法。这将从会话中删除购物车。
Cart::destroy();
Cart::total()
total()
方法可以用来获取购物车中所有项目的计算总价,考虑到它们的价格和数量。
Cart::total();
Cart::count()
如果您想知道购物车中有多少个项目,可以使用 count()
方法。此方法将返回购物车中项目的总数。因此,如果您添加了 2 本书和 1 件衬衫,它将返回 3 个项目。
Cart::count();
异常
如果出现问题,购物车包将抛出异常。这样,使用购物车包进行调试或根据异常类型处理错误就更容易了。购物车包可以抛出以下异常
事件
购物车还内置了事件。有五个事件可供您监听。
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
贡献
请参阅CONTRIBUTING和CODE_OF_CONDUCT以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件bahaa.rock@gmail.com联系,而不是使用问题跟踪器。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。