session或cookie做购物车:
优点:
1、不用操作数据库就可以实现功能;
2、用户可以不登录就将商品加入购物车中;
缺点:
1、导致session过于臃肿,并且session数据默认存储在文件中;(如果将session存储在redis中,个人理解,用session做购物车就和用redis基本一样了)
2、用户关闭浏览器再访问没有记录;(session有垃圾回收机制)
Redis做购物车:
优点:
1、不用操作数据库就可以实现功能;
2、用户可以不登录就将商品加入购物车中;
缺点:
1、用户关闭浏览器再访问没有记录;(要给redis购物车信息加入过期时间;如果用户登录状态,可以用用户ID做标识符,就不需要给过期时间了)
<?php
// 开启session跟踪用户
session_start();
class Cart{
private $redis = null;
public function __construct(){
$this->redis = new Redis();
$this->redis->connect('127.0.0.1',6379);
}
// 向购物车中添