首页 > 编程语言 >一个更复杂的 PHP 代码示例,我将展示一个购物车系统的基本实现,它包括商品类、购物车类和一些基本的操作方法。 <?php // 定义商品类 class Product { private

一个更复杂的 PHP 代码示例,我将展示一个购物车系统的基本实现,它包括商品类、购物车类和一些基本的操作方法。 <?php // 定义商品类 class Product { private

时间:2023-10-19 22:32:19浏览次数:38  
标签:function Product 示例 product cart 购物车 products public

一个更复杂的 PHP 代码示例,我将展示一个购物车系统的基本实现,它包括商品类、购物车类和一些基本的操作方法。

<?php

// 定义商品类
class Product {
  private $name;
  private $price;

  public function __construct($name, $price) {
    $this->name = $name;
    $this->price = $price;
  }

  public function getName() {
    return $this->name;
  }

  public function getPrice() {
    return $this->price;
  }
}

// 定义购物车类
class ShoppingCart {
  private $products;

  public function __construct() {
    $this->products = [];
  }

  public function addProduct(Product $product) {
    $this->products[] = $product;
  }

  public function removeProduct($productName) {
    foreach ($this->products as $key => $product) {
      if ($product->getName() === $productName) {
        unset($this->products[$key]);
        break;
      }
    }
  }

  public function getTotalPrice() {
    $totalPrice = 0;
    foreach ($this->products as $product) {
      $totalPrice += $product->getPrice();
    }
    return $totalPrice;
  }

  public function checkout() {
    $totalPrice = $this->getTotalPrice();
    $formattedPrice = number_format($totalPrice, 2);
    echo "总价: $" . $formattedPrice . "<br>";
    // 其他结账逻辑......
  }
}

// 创建一些商品实例
$product1 = new Product("手机", 999.99);
$product2 = new Product("笔记本电脑", 1599.99);
$product3 = new Product("耳机", 89.99);

// 创建购物车实例
$cart = new ShoppingCart();

// 添加商品到购物车
$cart->addProduct($product1);
$cart->addProduct($product2);
$cart->addProduct($product3);

// 移除商品
$cart->removeProduct("手机");

// 结账
$cart->checkout();

?>

以上代码展示了一个简单的购物车系统。我们定义了一个商品类(Product),它有名称和价格属性,并实现了购物车类(ShoppingCart),其中包含了添加商品、移除商品、计算总价和结账等功能。

标签:function,Product,示例,product,cart,购物车,products,public
From: https://blog.51cto.com/u_15964895/7942875

相关文章

  • AtCoder Regular Contest 167——B - Product of Divisors
    题目很明显,给定 所有因数的积不断除以最多能除几次。首先,很容易发现,对于每一对因子,都可以对答案得出B的贡献,设A的因子数目为n。将A进行质因数分解,PBa1,PBa2,PBa3……PBam,那么因数个数就是质因子加一的乘积。那么因子对数也就是前者一半。答案就是B乘因子对数除以二注意此处......
  • PHP 代码示例
    PHP代码示例,我将展示一个购物车系统的基本实现,它包括商品类、购物车类和一些基本的操作方法。<?php//定义商品类classProduct{private$name;private$price;publicfunction__construct($name,$price){$this->name=$name;$this->price=$price;......
  • Decorator 装饰者模式简介与 C# 示例【结构型4】【设计模式来了_9】
    〇、简介1、什么是装饰者模式一句话解释:  通过继承统一的抽象类来新增操作,再在使用时通过链式添加到对象中,达到与原有设定无关联可灵活附加。装饰者模式是一种行为设计模式,它允许向一个现有的对象添加新的行为,同时又不改变其结构。装饰者模式的基本概念是,将一个对象包装在......
  • 【小白必看】使用Python爬取喜马拉雅音频并保存的示例代码
    前言本文介绍了如何使用Python中的requests库来获取音频文件并保存到本地。在这个例子中,我们使用了喜马拉雅平台上的一个API接口来获取音频ID和名称,并使用这些信息构造音频地址,然后通过发送HTTP请求将音频内容下载保存到本地。运行效果截图导入requests库importrequests......
  • 【小白必看】Python爬取NBA球员数据示例
    前言使用Python爬取NBA球员数据的示例代码。通过发送HTTP请求,解析HTML页面,然后提取出需要的排名、姓名、球队和得分信息,并将结果保存到文件中。导入需要的库和模块importrequestsfromlxmlimportetree使用requests库发送HTTP请求。使用lxml库进行HTML解析。......
  • 【小白必看】Python图片合成示例之使用PIL库实现多张图片按行列合成
    前言本文介绍了一个用于图片合成的Python代码示例。该代码使用了PIL库来处理图片文件,并通过嵌套循环将多张图片按照指定的行数和列数进行合成。最终生成的合成图片保存在本地。效果图1.导入必要的库fromPILimportImageimportos这段代码导入了PIL库中的Image模块,......
  • php文件限速下载示例代码
    <?php//将发送到客户端的本地文件$local_file='abc.zip';//文件名$download_file='your-download-name.zip';//设置下载速率(=>31.2kb/s)$download_rate=31.2;if(file_exists($local_file)&&is_file($local_file)){header('Cache-control:pr......
  • php一键打包压缩目录文件代码示例
    <?php$button=$_POST['button'];if($button=="开始打包"){$zip=newZipArchive();$filename="./".date("Y-m-d")."_".md5(time())."_zy.zip";if($zip->......
  • java.io.IOException: Could not find resource mapper/ProductCategoryMapper.xml 解
    java.io.IOException:Couldnotfindresourcemapper/ProductCategoryMapper.xml解决方案 一、问题背景通过MyBatisPlus测试达梦数据库过程中,运行测试类的时候,项目报错:“java.io.IOException:Couldnotfindresourcemapper/ProductCategoryMapper.xml”工程的目录......
  • 下面是一个稍微复杂一些的 PHP 代码示例: <?php // 定义一个 Person 类 class Person
    下面是一个稍微复杂一些的PHP代码示例:<?php//定义一个Person类classPerson{private$name;private$age;//构造函数publicfunction__construct($name,$age){$this->name=$name;$this->age=$age;}//获取姓名publicfunctiong......