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 相关文章推荐
Classes and Objects in PHP5-面向对象编程 [1]
Oct 09 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
Feb 05 PHP
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
Apr 08 PHP
IIS安装Apache伪静态插件的具体操作图文
Jul 01 PHP
php中session过期时间设置及session回收机制介绍
May 05 PHP
php运行时动态创建函数的方法
Mar 16 PHP
使用PHP如何实现高效安全的ftp服务器(一)
Dec 20 PHP
php实现搜索类封装示例
Mar 31 PHP
php使用ftp远程上传文件类(完美解决主从文件同步问题的方法)
Sep 23 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
Oct 27 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
图象函数中的中文显示
2006/10/09 PHP
一个PHP日历程序
2006/12/06 PHP
支持中文、字母、数字的PHP验证码
2015/05/04 PHP
php插入含有特殊符号数据的处理方法
2016/11/24 PHP
实用javaScript技术-屏蔽类
2006/08/15 Javascript
js 编写规范
2010/03/03 Javascript
JS控制图片翻转示例代码(兼容firefox,ie,chrome)
2013/12/19 Javascript
JavaScript实现256色转灰度图
2017/02/22 Javascript
angularJS深拷贝详解
2017/03/23 Javascript
Vue封装Swiper实现图片轮播效果
2018/02/06 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
Vue开发之封装上传文件组件与用法示例
2019/04/25 Javascript
详解mpvue开发微信小程序基础知识
2019/09/23 Javascript
layui table单元格事件修改值的方法
2019/09/24 Javascript
JS实现随机抽取三人
2019/11/06 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
[55:56]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.22
2019/09/05 DOTA
python处理cookie详解
2014/02/07 Python
Python实现将绝对URL替换成相对URL的方法
2015/06/28 Python
Python 实现在文件中的每一行添加一个逗号
2018/04/29 Python
Python numpy.array()生成相同元素数组的示例
2018/11/12 Python
python列表推导式操作解析
2019/11/26 Python
在python3中实现更新界面
2020/02/21 Python
python打包多类型文件的操作方法
2020/09/21 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
html table呈现个人简历以及单元格宽度失效的问题解决
2021/01/22 HTML / CSS
美国女孩洋娃娃店:American Girl
2017/10/24 全球购物
Omio葡萄牙:全欧洲低价大巴、火车和航班搜索和比价
2019/02/09 全球购物
美容院店长岗位职责
2014/04/08 职场文书
群众路线教育实践活动思想汇报(2014特荐篇)
2014/09/16 职场文书
学生党员批评与自我批评
2014/10/15 职场文书
2014年手术室工作总结
2014/11/26 职场文书
小学生作文评语集锦
2014/12/25 职场文书
教师节慰问信
2015/02/15 职场文书
PostgreSQL解析URL的方法
2021/08/02 PostgreSQL
MySQL事务操作的四大特性以及并发事务问题
2022/04/12 MySQL