PHP高级对象构建 工厂模式的使用

时间:2022-11-18 10:06:42

PHP设计模式工厂模式的使用方法 

复制代码代码如下:

<?php 
/* 
* 每日练习 PHP设计模式工厂模式的使用方法 
* PHP工厂模式不难理解,顾名思义,就是一个加工厂,然后工厂是制造产品的,只要制造产品 
* 就必须有几个要素:"方法","模型","工厂车间"。 
*/ 
/*第一种示例 普通工厂模式 
* */ 
abstract class model {//产品模型 
abstract function getNames(); 

class zhangsan extends model {//产品实例 
function getNames(){ 
return "my name is zhengsan"; 


class lisi extends model{//产品实例 
function getNames(){ 
return "my name is lisi"; 


abstract class gongchangModel {//工厂模型 
abstract function getZhangsan(); 
abstract function getLisi(); 

class gongchang extends gongchangModel{//工厂实例 
function getZhangsan(){ 
return new zhangsan(); 

function getLisi(){ 
return new lisi(); 


$gongchang=new gongchang();//实例化工厂 
$zhangsan=$gongchang->getZhangsan();//制造产品 
echo $zhangsan->getNames();//产品输出功能 
?> 


之前我写去关于工厂设计模式的文章,实际上,工厂模式包含普通工厂模式和抽象工厂模式,但是,不管是什么工厂模式,它们都是有一个作用,那就是生成对象。 
好了,那我们用下面最最简单的例子,再把PHP设计模式中的厂模式再演示一下。 
我自己总结了一下,工厂模式的三个要素: 
一、产品模型 
二、产品实例 
三、工厂车间 

复制代码代码如下:

<?php 
abstract class prModel {//产品模型 
abstract function link(); 

class webLink extends prModel{//实例一个产品 
public function link(){ 
echo "www.zzvips.com"; 


class gongchang {//工厂 
static public function createLink (){ 
return new webLink(); 


$weblink=gongchang::createLink();//通过工厂制造一个对象 
$weblink->link();//输出 www.zzvips.com 
?> 


以上方法,就简单的说明了工厂类的使用方法。关注面向对象