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

yipeiwu_com6年前PHP代码库

本文实例讲述了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冒泡算法详解(递归实现)

实现 复制代码 代码如下: /*     冒泡算法(递归实现) */ function maoPao($array, $index=0) {  &...

PHP正则判断一个变量是否为正整数的方法

方法1 判断正整数 $keyword = '10'; // 0 1.1 1 if(preg_match("/^[1-9][0-9]*$/",$keyword)){ echo "是...

php计算指定目录下文件占用空间的方法

本文实例讲述了php计算指定目录下文件占用空间的方法。分享给大家供大家参考。具体分析如下: php中可以通过 RecursiveDirectoryIterator 扩展 Director...

PHP的拦截器实例分析

本文实例讲述了PHP的拦截器用法。分享给大家供大家参考。具体如下: PHP提供了几个拦截器,用于在访问未定义的方法和属性时被调用,如下所示: 1、__get($property) 功能:...

基于xcache的配置与使用详解

一、安装Xcache复制代码 代码如下:# wget http://xcache.lighttpd.net/pub/Releases/1.3.0/xcache-1.3.0.tar.gz#...