rapideinternet / phpcart
Simple framework agnostic shopping cart
Installs: 25
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 1
pkg:composer/rapideinternet/phpcart
Requires
- php: >=5.4.0
- illuminate/support: ~5.2
- symfony/http-foundation: ~2.0
Requires (Dev)
- phpunit/phpunit: ~4.4
This package is auto-updated.
Last update: 2025-10-15 06:39:31 UTC
README
Simple framework agnostic shopping cart.
Features
- Simple API
- Support multiple cart instances
- Framework agnostic, with optional Laravel integration
Requirements
- PHP 5.4+
Installation
PHPCart is available via Composer
$ composer require anam/phpcart
Integrations
Laravel 4 and Laravel 5 integrations
Although PHPCart is framework agnostic, it does support Laravel out of the box and comes with a Service provider and Facade for easy integration.
After you have installed the PHPCart, open the config/app.php file which is included with Laravel and add the following lines.
In the $providers array add the following service provider.
'Anam\Phpcart\CartServiceProvider'
Add the facade of this package to the $aliases array.
'Cart' => 'Anam\Phpcart\Facades\Cart'
You can now use this facade in place of instantiating the Cart yourself in the following examples.
Usage
Add Item
The add method required id, name, price and quantity keys. However, you can pass any data that your application required.
use Anam\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 ]);