欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 购物车类的实现代码与应用举例

程序员文章站 2022-05-11 13:32:18
...
  1. class Shopcar
  2. {
  3. //商品列表
  4. public $productList=array();
  5. /**
  6. *
  7. * @param unknown_type $product 传进来的商品
  8. * @return true 购物车里面没有该商品
  9. */
  10. public function checkProduct($product)
  11. {
  12. for($i=0;$iproductList);$i++ )
  13. {
  14. if($this->productList[$i]['name']==$product['name'])
  15. return $i;
  16. }
  17. return -1;
  18. }
  19. //添加到购物车
  20. public function add($product)
  21. {
  22. $i=$this->checkProduct($product);
  23. if($i==-1)
  24. array_push($this->productList,$product);
  25. else
  26. $this->productList[$i]['num']+=$product['num'];
  27. }
  28. //删除
  29. public function delete($product)
  30. {
  31. $i=$this->checkProduct($product);
  32. if($i!=-1)
  33. array_splice($this->productList,$i,1);
  34. }
  35. //返回所有的商品的信息
  36. public function show()
  37. {
  38. return $this->productList;
  39. }
  40. }
复制代码

2、productList.html

  1. php购物车-商品列表页面-bbs.it-home.org
  2. 查看购物车
  3. 商品编号 商品名称 价格 数量 购买
    0
  4. 购买
    1
  5. 购买
    2
  6. 购买
    3
  7. 购买
复制代码

3、index.php

  1. require 'Shopcar.class.php';
  2. session_start();
  3. $name=$_POST['name'];
  4. $num=$_POST['num'];
  5. $price=$_POST['price'];
  6. $product=array('name'=>$name,'num'=>$num,'price'=>$price);
  7. print_r($product);
  8. if(isset($_SESSION['shopcar']))
  9. $shopcar=unserialize($_SESSION['shopcar']);
  10. else
  11. $shopcar=new Shopcar();
  12. $shopcar->add($product);
  13. $_SESSION['shopcar']=serialize($shopcar);
  14. ?>
复制代码

4、show.php

  1. 商品信息展示页_bbs.it-home.org
  2. require 'Shopcar.class.php';
  3. session_start();
  4. $shopcar=unserialize($_SESSION['shopcar']);
  5. print_r($shopcar);
  6. $productList=$shopcar->productList;
  7. foreach ($productList as $product){
  8. ?>
  9. 商品编号 商品名称 价格 数量
    1
  10. ' />
复制代码