Download the PHP package lombervid/shoppingcart without Composer
On this page you can find all versions of the php package lombervid/shoppingcart. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download lombervid/shoppingcart
More information about lombervid/shoppingcart
Files in lombervid/shoppingcart
Package shoppingcart
Short Description A simple shopping cart class for PHP
License MIT
Homepage https://github.com/lombervid/shoppingcart
Informations about the package shoppingcart
ShoppingCart PHP Class
ShoppingCart is a simple PHP package that provides you with a simple shopping cart implementation stored in session
.
Installation
Composer
You can install it using composer:
Usage
Create an instance of ShoppingCart
class.
Add items
You can add items calling the method add()
passing an Item
instance as parameter.
at this point your $cart->items()
will look like this:
Add extra fields to your item
You can also add extra fields (such as price, name, etc) to your item. The Item
constructor receives a parameter fields
which is an Array
with the following structure:
when you provide the $fields
param, each field of the array is added to your item.
with the above code your $cart->items()
will look line:
Then you can access any extra field as if they were properties:
Remove items
You can remove an item from the cart calling the method remove($id)
which receive item's $id
as parameter.
Clear the cart
You can clear the cart calling the method clear()
which removes all the items from the cart.
Advanced options
ShoppingCart
Cart options
It is an array
of options. The default value is:
Option | Type | Default | Description |
---|---|---|---|
name |
string |
shopping_cart |
Cart's name. Used to save the cart in storage |
autosave |
bool |
true |
If set to true , cart is saved when object is destroyed |
tax |
int\|float |
0 |
Porcentaje to be used as tax (0 - 100) |
shipping.amount |
int\|float |
0 |
Shipping cost |
shipping.free |
int\|float |
0 |
Value after which shipping will be free. 0 to disable |
Constructor
Parameter | Type | Default | Required | Description |
---|---|---|---|---|
$options |
array |
See Cart options | false |
Cart options |
$storage |
StorageInterface |
NativeSessionStorage |
false |
Storage driver |
Methods
Name | Description |
---|---|
add(Item $item, bool $append = true): void |
Add an item to the cart |
remove(string $id): bool |
Remove an item from the cart |
subtotal(): float |
Get subtotal |
shipping(): float |
Get shipping cost |
tax(): float |
Get tax |
total(): float |
Get total |
inCart(string $id): bool |
Check if an item is in the cart |
items(): array |
Return the items in the cart |
clear(): static |
Remove all items from the cart |
isEmpty(): bool |
Check if the cart is empty |
totalItems(): int |
Return the total (distinct) items in the cart |
save(): void |
Save items in the storage |
toArray(): array |
Return items as array |
Item
Constructor
Parameter | Type | Default | Required | Description |
---|---|---|---|---|
$id |
string |
N/A |
true |
Identifier |
$name |
string |
N/A |
true |
Name / description |
$price |
float |
N/A |
true |
Price (>= 0 ) |
$qty |
int |
1 |
false |
Quantity (> 0 ) |
$fields |
array |
[] |
false |
Extra fields |
$discount |
float |
0 |
false |
Discount (>= 0 ) |
Methods
Name | Description |
---|---|
add(int $qty): void |
Increase item's quantity by $qty |
update(int $qty): void |
Update item's quantity to $qty |
get(string $name, mixed $default = null): mixed |
Get $name property/field |
hasDiscount(): bool |
Check if has a discount |
price(): float |
Get item's price |
total(): float |
Get total |
toArray(): array |
Return item as array |
Contributing
Refer to CONTRIBUTING for information.