Cart abstraction layer

v2.0.0 2014-09-22 07:11 UTC

This package is auto-updated.

Last update: 2020-07-18 23:57:36 UTC


README

Latest Version Software License Build Status Code Coverage Quality Score HHVM Status Total Downloads Dependency Status

Cart abstraction layer.

Install

Via Composer

$ composer require indigophp/cart

Usage

To see a proof of concept implementation, check this library.

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:

use Indigo\Cart\Store;

$store = new Store;
$cart = $store->find('cart_id');

// Throws an Indigo\Cart\Exception\CartNotFound
$store->find('non_existent');

Testing

$ phpspec run

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.