Indigo Cart
, (*1)
Cart abstraction layer., (*2)
Install
Via Composer, (*3)
``` bash
$ composer require indigophp/cart, (*4)
## Usage
To see a proof of concept implementation, check [this](https://github.com/indigophp/simple-cart) library.
``` php
use Indigo\Cart\Cart;
use Indigo\Cart\Item;
use Indigo\Cart\Store;
/* Note: these are interfaces, you cannot instantiate them */
$cart = new Cart;
$cart->addItem(new Item);
// Get total price
$cart->getTotal();
// Get item count (item * quantity)
$cart->getQuantity();
foreach($cart->getItems() as $id => $item) {
// Get subtotal
$item->getSubtotal();
// Get price
$item->getPrice();
// Get name
$item->getName();
}
// Throws an Indigo\Cart\Exception\ItemNotFound
$cart->getItem('non_existent');
$store = new Store;
$store->save($cart);
Get existing cart:, (*5)
``` php
use Indigo\Cart\Store;, (*6)
$store = new Store;
$cart = $store->find('cart_id');, (*7)
// Throws an Indigo\Cart\Exception\CartNotFound
$store->find('non_existent');, (*8)
## Testing
``` bash
$ phpspec run
Contributing
Please see CONTRIBUTING for details., (*9)
Credits
License
The MIT License (MIT). Please see License File for more information., (*10)