6.2.8 类的应用实例
下面简单地创建一个完整的类。该类表示一个用户的购物栏,当用户添加商品之后,购
物栏中便会增加对应商品和数量。
实例 6-2 创建一个完整的类
本实例创建一个完整的类,该类中有构造函数,有属性、方法等,如代码6-3 所示。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <html>
  <head>
   <title> completeclass.php </title>
   <meta charset="UTF-8">
   <meta name="Author" content="">
   <meta name="Keywords" content="">
   <meta name="Description" content="">
  </head> <body>
<?php
 class Cart {
 var $items; // 购物车中的物品
 var $name;
 // 将 $num 个 $artnr 物品加入购物车
 function __construct($myName) //构造函数
 {
 echo("$myName 的购物车,购物过程如下:<br>");
 $this->name=$myName;
 }
  //添加商品
  function add_item($artnr, $num) {
   if(empty($this->items[$artnr]))
   {
    $this->items[$artnr] = $num;
   }
   else
   {
    $this->items[$artnr] += $num;
   }
  echo "<br>添加 $num 个 $artnr,$artnr 的总数为 " .$this->items[$artnr];
  }
  // 将 $num 个 $artnr 物品从购物车中取出
  function remove_item($artnr, $num) {
   if ($this->items[$artnr] > $num) {
   $this->items[$artnr] -= $num;
   echo "<br>放回 $num 个 $artnr,$artnr 的总数为 ".
   $this->items[$artnr];
   return true;
   } elseif ($this->items[$artnr] == $num) {
   unset($this->items[$artnr]);
   echo "<br>放回 $num 个 $artnr,$artnr 的总数为0";
   return true;
   } else {
   return false;
   }
  }
 }
 $myCart=new Cart("张三");
 $myCart->add_item("苹果",9);
 $myCart->add_item("香蕉",8);
 $myCart->remove_item("苹果",2);
 $myCart->remove_item("香蕉",3);
 ?> </body>
 </html>

张三 的购物车,购物过程如下:

添加 9 个 苹果,苹果 的总数为 9
添加 8 个 香蕉,香蕉 的总数为 8
放回 2 个 苹果,苹果 的总数为 7
放回 3 个 香蕉,香蕉 的总数为 5