dcblogdev / phpcart
Simple framework agnostic shopping cart
v1.0.3
2023-02-05 00:30 UTC
Requires
- php: ^7.3|^8.0
- illuminate/support: 5.5.x|5.6.x|5.7.x|5.8.x|6.x|7.x|8.x|9.x|10.x
Requires (Dev)
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2024-12-05 04:05:55 UTC
README
Simple framework agnostic shopping cart.
Originally from https://github.com/anam-hossain/phpcart I've released this under my own namespace as I needed support for Laravel 7/8, at the time of writing this there is an open PR on the original repo which has not been responded to.
Features
- Simple API
- Support multiple cart instances
- Framework agnostic
Requirements
- PHP 7.3+
Installation
PHPCart is available via Composer
$ composer require dcblogdev/phpcart
Usage
Add Item
The add method required id
, name
, price
and quantity
keys. However, you can pass any data that your application required.
use Dcblogdev\Phpcart\Cart; $cart = new Cart(); $cart->add([ 'id' => 1001, 'name' => 'Skinny Jeans', 'quantity' => 1, 'price' => 90 ]);
Update Item
$cart->update([ 'id' => 1001, 'name' => 'Hoodie' ]);
Update quantity
$cart->updateQty(1001, 3);
Update price
$cart->updatePrice(1001, 30);
Remove an Item
$cart->remove(1001);
Get all Items
$cart->getItems(); // or $cart->items();
Get an Item
$cart->get(1001);
Determining if an Item exists in the cart
$cart->has(1001);
Get the total number of items in the cart
$cart->count();
Get the total quantities of items in the cart
$cart->totalQuantity();
Total sum
$cart->getTotal();
Empty the cart
$cart->clear();
Multiple carts
PHPCart supports multiple cart instances, so that you can have as many shopping cart instances on the same page as you want without any conflicts.
$cart = new Cart('cart1'); // or $cart->setCart('cart2'); $cart->add([ 'id' => 1001, 'name' => 'Skinny Jeans', 'quantity' => 1, 'price' => 90 ]); //or $cart->named('cart3')->add([ 'id' => 1001, 'name' => 'Jeans', 'quantity' => 2, 'price' => 100 ]);