PHP高级对象构建 工厂模式的使用
PHP高级对象构建 工厂模式的使用
发布时间:2016-12-29 来源:查字典编辑
摘要:PHP设计模式工厂模式的使用方法复制代码代码如下:之前我写去关于工厂设计模式的文章,实际上,工厂模式包含普通工厂模式和抽象工厂模式,但是,不...

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.jb51.net";

}

}

class gongchang {//工厂

static public function createLink (){

return new webLink();

}

}

$weblink=gongchang::createLink();//通过工厂制造一个对象

$weblink->link();//输出 www.jb51.net

?>

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

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类