mugenzo / laravel-shopping-cart
laravel的购物车
Requires
- ext-json: *
- illuminate/events: 5.4.*||5.5.*||5.6.*||5.7.*||5.8.*||^6.0||^7.0
- illuminate/session: 5.4.*||5.5.*||5.6.*||5.7.*||5.8.*||^6.0||^7.0
- illuminate/support: 5.4.*||5.5.*||5.6.*||5.7.*||5.8.*||^6.0||^7.0
- nesbot/carbon: ~1.20||^1.26.3||^2.0
Requires (Dev)
- mockery/mockery: ^1.0
- orchestra/testbench: ^3.4
- phpunit/phpunit: ~5.0||~6.0||~7.0||~8.0
This package is auto-updated.
Last update: 2024-09-29 05:48:50 UTC
README
安装
从终端运行Composer require命令
composer require mugenzo/laravel-shopping-cart
现在你已准备好开始在应用程序中使用购物车。
目录
查看以下主题之一以了解更多关于LaravelShoppingCart的信息
用法
购物车提供了以下方法供您使用
Cart::add()
添加到购物车中的项目非常简单,您只需使用add()
方法,该方法接受多种参数。
在其最基本的形式中,您可以指定要添加到购物车中的产品的id、名称、数量、价格和重量。
Cart::add('293ad', 'Product 1', 1, 9.99, 550);
作为可选的第五个参数,您可以传递选项,因此您可以添加具有相同id但具有不同尺寸(例如)的多个项目。
Cart::add('293ad', 'Product 1', 1, 9.99, 550, ['size' => 'large']);
add()
方法将返回您刚刚添加到购物车中的项目的CartItem实例。
也许您更喜欢使用数组添加项目?只要数组包含所需的键,您就可以将其传递给方法。选项键是可选的。
Cart::add(['id' => '293ad', 'name' => 'Product 1', 'qty' => 1, 'price' => 9.99, 'weight' => 550, 'options' => ['size' => 'large']]);
Cart::update()
要更新购物车中的项目,您首先需要项目的rowId。然后,您可以使用update()
方法来更新它。
如果您只想更新数量,请将rowId和新的数量传递给更新方法
$rowId = 'da39a3ee5e6b4b0d3255bfef95601890afd80709'; Cart::update($rowId, 2);
如果您想更新购物车中项目的选项
$rowId = 'da39a3ee5e6b4b0d3255bfef95601890afd80709'; Cart::update($rowId, ['options' => ['size' => 'small']]); // Will update the size option with new value
Cart::remove()
要从购物车中删除项目,您还需要rowId。您只需将此rowId传递给remove()
方法,它就会从购物车中删除该项目。
$rowId = 'da39a3ee5e6b4b0d3255bfef95601890afd80709'; Cart::remove($rowId);
Cart::get()
如果您想通过rowId获取购物车中的项目,您只需在购物车上调用get()
方法并传递rowId即可。
$rowId = 'da39a3ee5e6b4b0d3255bfef95601890afd80709'; Cart::get($rowId);
Cart::content()
当然,您也想获取购物车的商品内容。这就是您将使用content
方法的地方。此方法将返回一个CartItems集合,您可以遍历并显示给客户。
Cart::content();
Cart::destroy()
Cart::destroy();
Cart::total()
total()
方法可用于获取购物车中所有项目的计算总价,给定其价格和数量。
Cart::total();
Cart::discount()
discount()
方法可用于获取购物车中所有项目的总折扣。
Cart::discount();
Cart::initial()
initial()
方法可用于获取在应用折扣之前购物车中所有项目的总价格。
Cart::initial();
Cart::count()
如果您想知道购物车中有多少个项目,您可以使用count()
方法。此方法将返回购物车中的项目总数。所以如果您添加了2本书和1件衬衫,它将返回3个项目。
Cart::count(); $cart->count();
Cart::search()
要找到购物车中的项目,您可以使用search()
方法。
$cart->search(function ($cartItem, $rowId) { return $cartItem->id === 1; });
Cart::setDiscount($type, $value)
您可以使用setDiscount()
方法来更改应用于购物车的折扣类型和值。
Cart::setDiscount('percent', 10); $cart->setDiscount('percent', 10);
Cart::setDiscount('flat', 100); $cart->setDiscount('flat', 100);
配置
如果您想更改购物车选项,您必须发布config
文件。
php artisan vendor:publish --provider="Mugenzo\LaravelShoppingCart\ShoppingCartServiceProvider" --tag="config"
这将为您提供一个shopping_cart_config.php
配置文件,您可以在其中进行更改。