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

yipeiwu_com7年前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实现表单提交时去除斜杠的方法

本文实例讲述了PHP实现表单提交时去除斜杠的方法。分享给大家供大家参考,具体如下: <html> <head> <title>HTML...

PHP删除目录及目录下所有文件的方法详解

函数代码一:删除目录及目录下的所有文件复制代码 代码如下://循环删除目录和文件函数function delDirAndFile( $dirName ){if ( $handle = o...

在smarty中调用php内置函数的方法

相信有很多朋友还不知道,可以在smarty模板里调用php的内置函数,我们一起来看看它的用法。 模板书写: {'param1'|functionName:'param2':'param3...

php查看session内容的函数

如:name|s:4:"tasm";passwd|s:6:"111111";mode|s:1:"1",也知道该session存放的位置,而且可以上传文件,所以嘛,当时就做了一次小小的黑客...

浏览器关闭后,能继续执行的php函数(ignore_user_abort)

多的不说,直接上代码: 复制代码 代码如下: ignore_user_abort(true); //设置客户端断开连接时是否中断脚本的执行 set_time_limit(0); $fil...