PHP基于工厂模式实现的计算器实例


Posted in PHP onJuly 16, 2015

本文实例讲述了PHP基于工厂模式实现的计算器。分享给大家供大家参考。具体如下:

abstract class Calculator
{
 private $number1;
 private $number2;
 public $result;
 /**
  * @return the $number2
  */
 public function getNumber2() {
  return $this->number2;
 }
 /**
  * @param field_type $number2
  */
 public function setNumber2($number2) {
  $this->number2 = $number2;
 }
 /**
  * @return the $number1
  */
 public function getNumber1() {
  return $this->number1;
 }
 /**
  * @param field_type $number1
  */
 public function setNumber1($number1) {
  $this->number1 = $number1;
 }
 abstract function get_result();
 }
class Add extends Calculator
{
  public function get_result($number1,$number2)
  {
   return $number1+$number2;
  }
}
class Sub extends Calculator
{
  public function get_result($number1,$number2)
  {
   return $number1-$number2;
  }
}
class Mul extends Calculator
{
  public function get_result($number1,$number2)
  {
   return $number1*$number2;
  }
}
class Div extends Calculator
{
  public function get_result($number1,$number2)
  {
   return $number1/$number2;
  }
}
class Factory
{
  public function Building($notes)
  {
   if($notes=="+")
   {
    $add=new Add();
    return $add;
   }
   elseif ($notes=="-")
   {
    $sub=new Sub();
    return $sub;
   }
   elseif($notes=="*")
   {
    $mul=new Mul();
    return $mul;
   }
   else
   {
    $div=new Div();
    return $div;
   }
  }
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
复杂检索数据并分页显示的处理方法
Oct 09 PHP
谈谈新手如何学习PHP
Dec 14 PHP
解析将多维数组转换为支持curl提交的一维数组格式
Jul 08 PHP
PHP中提问频率最高的11个面试题和答案
Sep 02 PHP
php使用simplexml_load_file加载XML文件并显示XML的方法
Mar 19 PHP
php递归遍历多维数组的方法
Apr 18 PHP
微信获取用户地理位置信息的原理与步骤
Nov 12 PHP
Zend Framework基本页面布局分析
Mar 19 PHP
深入理解PHP之源码目录结构与功能说明
Jun 01 PHP
php源码 fsockopen获取网页内容实例详解
Sep 24 PHP
PHP基于自增数据如何生成不重复的随机数示例
May 19 PHP
php处理多图上传压缩代码功能
Jun 13 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 #PHP
PHP实现上传文件并存进数据库的方法
Jul 16 #PHP
PHP实现通过get方式识别用户发送邮件的方法
Jul 16 #PHP
php项目中百度 UEditor 简单安装调试和调用
Jul 15 #PHP
PHP开发Apache服务器配置
Jul 15 #PHP
ajax+php控制所有后台函数调用
Jul 15 #PHP
PHP实现对png图像进行缩放的方法(支持透明背景)
Jul 15 #PHP
You might like
全国FM电台频率大全 - 9 上海市
2020/03/11 无线电
老生常谈PHP面向对象之命令模式(必看篇)
2017/05/24 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
laravel-admin 在列表页添加自定义按钮的例子
2019/09/30 PHP
Mootools 图片展示插件(lightbox,ImageMenu)收集集合
2010/05/21 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
ie支持function.bind()方法实现代码
2012/12/27 Javascript
js中onload与onunload的使用示例
2013/08/25 Javascript
JavaScript中的函数声明和函数表达式区别浅析
2015/03/27 Javascript
jQuery实现的漂亮表单效果代码
2015/08/18 Javascript
jQuery实现简单下拉导航效果
2015/09/07 Javascript
超全面的JavaScript开发规范(推荐)
2017/01/21 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
2018/03/26 Javascript
javascript、php关键字搜索函数的使用方法
2018/05/29 Javascript
js贪心算法 钱币找零问题代码实例
2019/09/11 Javascript
微信小程序在text文本实现多种字体样式
2019/11/08 Javascript
Python中List.index()方法的使用教程
2015/05/20 Python
利用python程序生成word和PDF文档的方法
2017/02/14 Python
python中将函数赋值给变量时需要注意的一些问题
2017/08/18 Python
Python爬虫实现爬取百度百科词条功能实例
2019/04/05 Python
Django用户认证系统 Web请求中的认证解析
2019/08/02 Python
python打开使用的方法
2019/09/30 Python
python tkinter之 复选、文本、下拉的实现
2020/03/04 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
2020/05/19 Python
Python unittest如何生成HTMLTestRunner模块
2020/09/08 Python
python爬虫爬取图片的简单代码
2021/01/18 Python
css3使网页、图片变成灰色兼容大多数浏览器
2014/07/02 HTML / CSS
canvas绘制图片drawImage使用方法
2020/09/15 HTML / CSS
Agoda台湾官网:国内外订房2折起
2018/03/20 全球购物
俄罗斯披萨、寿司和面食送货到家服务:2 Берега
2019/12/15 全球购物
Woods官网:加拿大最古老、最受尊敬的户外品牌之一
2020/09/12 全球购物
自荐信要包含哪些内容
2013/11/06 职场文书
先进德育工作者事迹材料
2014/01/24 职场文书
解除劳动合同协议书范本
2014/09/13 职场文书
2014年作风建设心得体会
2014/10/22 职场文书
《索溪峪的野》教学反思
2016/02/19 职场文书