PHP工厂模式详解-PHP设计模式

山河博客
山河博客

大家好我是山河,今天我给大家谈一谈关于PHP的设计模式之工厂模式哈

工厂模式特点:传递不同的参数获取不同的对象

上代码加深理解

<?php
class ProductsA {
}
class ProductsB {	
}
//工厂模式
class ProductsFactory {
	public function create($num) {
		switch($num) {
			case 1:
				return new ProductsA;
			case 2:
				return new ProductsB;
			default:
				return null;
		}
	}
}
//测试
$factory=new ProductsFactory();
$obj1=$factory->create(1);
$obj2=$factory->create(2);
var_dump($obj1,$obj2); //object(ProductsA)#2 (0) { } object(ProductsB)#3 (0) { } 

通过上方代码可以看出来,将ProductsFactory对象实例化了之后,调用create方法,传递1就实例化ProductsA对象,传递2就实例化ProductsB对象。

这个就是PHP工厂模式。

好了,本文结束,我是山河。