PHP 购物车类

PHP 购物车类——封装购物车常用方法,购物车的主要功能是保留用户选择的商品信息。用户可以在购物车内设置选购商品的数量、显示选购商品的总金额,还可以执行清除选择的全部商品信息、重新选择商品信息等操作。为了提高开发的效率,笔者将购物车中的各种功能都封装到Cart购物车类中,实现各种功能只需调用类中对应的方法即可。

PHP 购物车类 语法

/******************************************************************
 * @ 说明:购物车类
  ******************************************************************/
class Cart{
   var $idStr;    //商品ID 组成的字符串,用字符@进行连接
   var $numStr;   //商品数量组成的字符串,用字符@进行连接
   /*
     * @ 方法说明:
     * 构造方法
     *
     * @ 参数说明:
     * $idStr:存储商品ID 的字符串
     * $numStr:存储商品数量的字符串
     */
   function Cart ($idStr, $numStr)
   {
      $this->idStr = $idStr;       //为ID 串赋初值
      $this->numStr = $numStr;     //为数量串赋初值
   }
   /*
     * @ 方法说明:
     * 将商品添加到购物车
     *
     * @ 参数说明:
     * $goodsId:商品ID
     * $goodsNum:购买数量
     */
   function addCart ($goodsId, $goodsNum)
   {
      $arrayIds = explode('@', $this->idStr);
      $flag = 0;
      for ($i = 0; $i < count($arrayIds); $i ++) {
         if ($arrayIds[$i] == $goodsId) {
          $flag = 1;
         }
      }
      if ($flag == 0) {
         $this->idStr .= $goodsId . '@';
         $this->numStr .= $goodsNum . '@';
      } else {
         echo "<script>alert('该商品已经添加!');</script>";
      }
   }
   /*
     * @ 方法说明:
     * 将商品从购物车移出
     *
     * @ 参数说明:
     * $goodsId:商品ID
     */
   function removeCart ($goodsId)
   {
$arrayIds = explode('@', $this->idStr);
      $arrayNums = explode('@', $this->numStr);
      for ($i = 0; $i < count($arrayIds); $i ++) {
         if ($arrayIds[$i] == $goodsId) {
          unset($arrayIds[$i]);
          unset($arrayNums[$i]);
      }
   }
      $this->idStr = implode('@', $arrayIds);
      $this->numStr = implode('@', $arrayNums);
   }
   /*
     * @ 方法说明:
     * 更改购物车中商品数量
     *
     * @ 参数说明:
     * $goodsId:商品ID
     * $goodsNum:购买数量
     */
   function changeNum ($goodsId, $goodsNum)
   {
      $arrayIds = explode('@', $this->idStr);
      $arrayNums = explode('@', $this->numStr);
      for ($i = 0; $i < count($arrayIds); $i ++) {
         if ($arrayIds[$i] == $goodsId) {
          $arrayNums[$i] = $goodsNum;
      }
   }
      $this->idStr = implode('@', $arrayIds);
      $this->numStr = implode('@', $arrayNums);
   }
   /*
     * @ 方法说明:
     * 清空购物车
     */
   function setCartNull ()
   {
      $this->idStr = '';
      $this->numStr = '';
   }
   /*
* @ 方法说明:
* 获取购物车中商品ID 字符串
*/
   function getIdStr ()
   {
      return $this->idStr;
   }
   /*
* @ 方法说明:
* 获取购物车中商品数量字符串
*/
   function getNumStr ()
   {
      return $this->numStr;
   }
}
赞(0)
未经允许不得转载:极客笔记 » PHP 购物车类
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址