tomshaw/shopcart

一个现代且易于使用的 Laravel 购物车

v1.5.0 2024-04-19 13:16 UTC

README

GitHub Workflow Status issues forks stars GitHub license

ShopCart 是一个现代且易于使用的 Laravel 购物车。

安装

您可以通过 composer 安装此包。

composer require tomshaw/shopcart

发布配置文件

php artisan vendor:publish --provider="TomShaw\ShopCart\Providers\ShopCartServiceProvider" --tag=config

要求

此包与 Laravel 10 和 11 兼容。

基本用法

向购物车添加商品。

注意:在创建或更新购物车商品时,会验证购物车商品的构造函数属性。

注意:创建并使用一个唯一的随机整数 rowId 来识别购物车商品。

use TomShaw\ShopCart\{Cart, CartItem};

$cartItem = CartItem::make(id: $product->id, name: $product->name, quantity: 1, price: $product->price);

Cart::add($cartItem);

向购物车添加带有产品选项的商品。

$cartItem = CartItem::make($product->id, $product->name, 1, $product->price);

$cartItem->size = 'XL';
$cartItem->logo = 'Laravel Rocks';

Cart::add($cartItem);

更新购物车中的商品和产品选项。

$cartItem = Cart::where('id', '===', $id)->first();

$cartItem->quantity = 5;
$cartItem->size = '2XL';

Cart::update($cartItem);

从购物车中删除商品。

Cart::remove(Cart::get($rowId));

结账后删除购物车。

Cart::forget();

购物车总计

计算属性:taxpricesubtotalquantity

$totalPrice = Cart::total('price');
$totalQuantity = Cart::total(property: 'quantity', numberFormat: false);
$subTotal = Cart::total('subtotal');
$totalTax = Cart::total('tax');

税率

要设置默认税率,请将以下环境变量添加到您的应用程序 .env 文件中。

SHOPCART_DEFAULT_TAXRATE=9.547

您可以在运行时轻松地应用特定项目的税率。

use TomShaw\ShopCart\{Cart, CartItem};

Cart::add(CartItem::make(tax: 6.250, ...));

数字格式化

数字格式化通过在您的应用程序 .env 文件中添加以下环境变量来处理。

SHOPCART_DECIMALS=2
SHOPCART_DECIMAL_SEPARATOR="."
SHOPCART_THOUSANDS_SEPARATOR=","

代理方法

通过 rowId 从集合中获取商品。

$cartItem = Cart::get($rowId);

通过 rowId 检查购物车商品是否存在。

$boolean = Cart::has($rowId);

获取购物车作为集合或数组。

$cartItems = Cart::all(bool $toArray = false);

搜索特定的购物车商品。

$cartItems = Cart::where('id', '===', $productId);

检查购物车是否为空。

Cart::isEmpty();
Cart::isNotEmpty();

将购物车转换为 arrayjson

Cart::toArray();
Cart::toJson();

变更日志

有关对项目的更改,请参阅 变更日志

贡献

有关详细信息,请参阅 CONTRIBUTING

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件