前言:对于PHP实现购物车的方法有很多,购物车的操作莫过于添加商品,修改商品数量,删除商品,清空购物车,而操作的对象则为一个商品记录。
实现方式:大致有3种。
第一种:$_COOKIE
实现思路:把一个二维数组存入cookie。其中一维代表一个商品记录,二维代表商品属性。其模型为: $_COOKIE[‘cart’] = array(
‘0’=>array(id,name,price,discount,count,maxcount),
‘1’=>array(id,name,price,discount,count,maxcount)
)
增删改查,则为操作$_COOKIE[‘cart’]
第二种:$_SESSION,实现原理和$_COOKIE相同 ,思想:$_COOKIE和$_SESSION可以在有效期内保存变量,其为容器
第三种:谈到保存变量,则想到数据库这个大容器。在一个站点一次会话中购买,有个有效期的限制,在这个有效期的对购物车的操作,则为一次订单,一次订单式一个唯一的变量,此变量$var 相当于$_COOKIE[‘cart’] 这个数组。其模型为:
Id | $var | Name | Price | 商品ID | 商品数量 | maxcout |
1 | 123456xx | - | - | 1 | 10 | - |
2 | 123456xx | - | - | 2 | 1 | - |
3 | 123456xx | - | - | 3 | 1 | - |
相当于$_COOKIE[‘cart’] = array(
‘1’=>array(-,-,1,10,-),
‘2’=>array(-,-,2,1,-),
‘3’=>array(-,-,3,1,-)
) ; 此$var = $_COOKIE[‘cart’] . 二此$var值的唯一性是个关键,可以通过$_COOKIE[‘var’] ,或者$_SESSION[‘var’] 来得到 。