随笔 - 1330  文章 - 1  评论 - 378  阅读 - 482万 
复制代码
<?
  
/****************************************
  名称:  cart.php
    作者:  psdshow
                 联系方式: psdshow@yahoo.com.cn
    版本号:  1.0
  版权:
    编写日期: 2005年12月11日
    文件描述: 用于购物车的实现,只用了一个SESSION,可以通过$Attribe扩展
    修改日志:
  ****************************************
*/
class Cart{
var $Item=array();
//初始化
function Cart($SessionName){
        
$this->Item= &$_SESSION[$SessionName];
        }
//增加一个商品
function AddItem($ID,$Name,$Count,$Price,$Image,$Description,$Attribe){
        
if(!isset($this->Item[$ID])){
          
$this->Item[$ID]=array('Name'=>$Name,
                                 
'Count'=>intval($Count),
                                 
'Price'=>$Price,
                                 
'Image'=>$Image,
                                 
'Description'=>$Description,
                                 
'Attribe'=>$Attribe
                                 );
          }
          
else{
              
$TMPCount=$this->Item[$ID]['Count']+intval($Count);
              
$this->Item[$ID]=array('Name'=>$Name,
                                     
'Count'=>$TMPCount,
                                     
'Price'=>$Price,
                                     
'Image'=>$Image,
                                     
'Description'=>$Description,
                                     
'Attribe'=>$Attribe
                                     );
              }
        }
//删除一个商品
function DeleteItem($ID){
         
unset($this->Item[$ID]);
         }
//修改一个商品
function ModifyItem($ID,$Count){
        
$this->Item[$ID]['Count']=intval($Count);
        }
function ModifyAttribe($ID,$Attribe){
        
$this->Item[$ID]['Attribe']=$Attribe;
        }
//取得总价值
function GetTotalCost(){
 
if(is_array($this->Item)){
          
foreach($this->Item as $K=>$V){
                 
$Total+=$this->Item[$K]['Count']*$this->Item[$K]['Price'];
                 }
          }
        
return $Total;
        }
//返回全部商品
function GetAllItem(){
        
return $this->Item;
        }
//清空购物篮
function ClearItem(){
        
$this->Item='';
        }
}
?>
复制代码
posted on   钱途无梁  阅读(359)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示