新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下php购物车是如何实现的,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
成都创新互联公司专注于企业全网营销推广、网站重做改版、兴国网站定制设计、自适应品牌网站建设、成都h5网站建设、商城开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为兴国等各大城市提供网站开发制作服务。php购物车是怎么实现的?
PHP简单实现购物车
首先,判断是否登录、
if(isset($_session['user_id'])){ 存在; 把用户id和商品id,加入购物车表 }else{ 不存在; 使用cookie把商品ID和主机IP放入一个数组 ,把这个数组存入cookie; 浏览器允许存放300个cookie, 每个cookie的大小为4KB,足以满足购物车的要求,同时也 减轻了服务器的负荷 }
假如浏览器把cookie禁用,使用memcache来实现
另一种方法,判断是否登录、
if(isset($memcache->get('user_id'))){ 存在; 把用户id和商品id,加入购物车表 }else{ 不存在; $memcache = new Memcache(); //实例化memchche $data=['goods_id'=>$goods_id,'ip'=>$_SERVER ['REMOTE_ADDR']]; $memcache->set('key键',serialize($data)); }
redis实现与memcache没有太大的区别!
memcache代码如下
$cart=new Cart(); $goods_id = isset($_GET['goods_id']) ? $_GET['goods_id'] : '1'; $session = \yii::$app->session; // $session->set('user_id','1'); $user_id = $session->get("user_id"); $mem = Yii::$app->cache; if(isset($user_id)){ $data['user_id'] = $user_id; $data['goods_id'] = $goods_id; $is_add=$cart->setAttributes($data)->insert(); }else{ $data['user_id'] = $_SERVER['REMOTE_ADDR']; $data['goods_id'] = $goods_id; $mem->set('data',serialize($data)); } unserialize($mem->get('data')); //memcache数据
以上两种方法都可以实现,假如使用第一种的话,我们就得设置cookie的失效时间,假如使用第二种的话,取值的时候需要反序列化 unserialize() ,接着就可以拿到你要拿到的数据了!
以上是php购物车是如何实现的的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联成都网站设计公司行业资讯频道!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。