例子,php工厂模式实例代码。
<?php
//运算符抽象类
abstract class Operation{
private $num1=0;
private $num2=0;
public function __get($name){
if(isset($this->$name)){
return $this->$name;
}
return null;
}
public function __set($name,$value){
$this->$name=$value;
}
abstract function getResult();
}
//加法
class Add extends Operation{
public function getResult(){
return $this->num1+$this->num2;
}
}
//减法
class Sub extends Operation{
public function getResult(){
return $this->num1-$this->num2;
}
}
//乘法
class Mul extends Operation{
public function getResult(){
return $thi->num1*$this->num2;
}
}
//除法
class Div extends Operation{
public function getResult(){
if($this->num2==0){
echo "除数不能为零";
return false;
}
return $this->num1/$this->num2;
}
}
//运算符操作工厂,来决定初始化哪个类
class OperationFactory{
static function createOperation($operate){
switch($operate){
case "+":
$oper=new Add();
break;
case "-":
$oper=new Sub();
break;
case "*":
$oper=new Mul();
break;
case "/":
$oper=new Div();
}
return $oper;
}
}
//开始测试
$oper=OperationFactory::createOperation("+");
$oper->num1=3;
$oper->num2=6;
$result=$oper->getResult();
echo $result;
?>
>>> 您可能感兴趣的文章:
php设计模式之单例模式、工厂模式与观察者模式
PHP工厂模式的实例分析
深入php设计模式实例详解
php设计模式实例之单例模式
php设计模式实例之命令模式
php设计模式实例之工厂模式
php设计模式实例之观察者模式(2)
PHP设计模式实例之观察者模式
PHP设计模式之观察者模式的例子
php 购物车类的实现代码(单例模式)
php单例模式为何只能实例化一次
php cgi和module运行模式的配置介绍
php设计模式之工厂模式的实例代码
php设计模式之单例模式的实例代码
php常用设计模式之工厂模式与单例模式介绍
学习php设计模式之单例模式
php实现的单例模式的例子
学习php单例模式及应用实例
php单例模式的演示代码
有关php单例模式介绍及例子
学习php的适配器模式
php常用的三种设计模式的学习笔记
php设计模式之单例模式学习
php单例模式的例子