cyrkulewski / shopping-cart
简单的ZF2购物车
v1.0.1
2016-06-12 18:53 UTC
Requires
- php: >=5.3.0
- zendframework/zendframework: 2.*
This package is auto-updated.
Last update: 2024-09-20 02:57:06 UTC
README
此模型是一个简单的ZF2购物车解决方案。提供创建和修改购物车的基本功能,其中可以包含任何内容。易于扩展,只需创建自己的购物车实体并在购物车初始化期间推送即可。
灵感来源于
我受到Vincenzo Provenza和Concetto Vecchio(http://github.com/vikey89/ZendCart)出色工作的启发,创建了ShoppingCart。保留了相同的概念,但使其更加灵活,更容易扩展和更改。
安装
使用composer composer 进行安装。在composer.json中将此项目添加到项目中
"require": {
"cyrkulewski/shopping-cart": "dev-master"
}
安装后
配置
- 在config/application.config.php中的数组
modules
下添加购物车模块,插入ShoppingCart
。 - 将名为
shoppingcart.global.php.dist
的文件复制到config/autoload/
,并更名为shoppingcart.global.php
。 - 修改配置以符合您的期望。
示例
插入
您可以向购物车中插入任意数量的商品。购物车中的每个条目都将有一个唯一的令牌用于处理。以下是一个包含一个产品的示例
$product = array( 'id' => 'XYZ', 'qty' => 1, 'price' => 15.15, 'product' => 'Book: ZF2 for beginners', ); $this->ShoppingCart()->insert($product);
包含两个产品的示例
$products = array( array( 'id' => 'XYZ', 'qty' => 1, 'price' => 15.15, 'product' => 'Book: ZF2 for beginners', ), array( 'id' => 'ZYX', 'qty' => 3, 'price' => 19.99, 'product' => 'Book: ZF2 for advanced users', ) ); $this->ShoppingCart()->insert($products);
移除
$token => '4b848870240fd2e976ee59831b34314f7cfbb05b'; $this->ShoppingCart()->remove($token);
销毁
完全删除购物车。
$this->ShoppingCart()->destroy();
购物车
获取购物车的所有内容。
$this->ShoppingCart()->cart();
总价
$this->ShoppingCart()->total_sum();
商品总数
$this->ShoppingCart()->total_items();
控制器中的示例
return new ViewModel(array( 'cart' => $this->ShoppingCart()->cart(), 'total_items' => $this->ShoppingCart()->total_items(), 'total_sum' => $this->ShoppingCart()->total_sum(), ));
如何更改/扩展购物车
提供的购物车实体非常基础。您可以更改其实体结构。例如,如果您需要向购物车中的每个商品添加选项或提供折扣字段等,您应该做什么
- 将ShoppingCart/Entity/ShoppingCartEntity复制到您的模块中
- 修改YourModule/Entity/ShoppingCartEntity:添加您需要的任何字段
- 在购物车初始化期间提供您的YourModule/Entity/ShoppingCartEntity
$this->ShoppingCart()->setEntityPrototype(new YourModule/Entity/ShoppingCartEntity());
函数参考
贡献者
Aleksander Cyrkulewski - cyrkulewski@gmail.com