PHP建造者模式代码示例详解
程序员文章站
2022-04-09 15:19:35
...
PHP建造者模式代码示例详解
<?php // 建造者模式 class Product { private $size; private $color; private $type; public function setSize($size) { $this->size = $size; } public function setColor($color) { $this->color = $color; } public function setType($type) { $this->type = $type; } public function toString() { ob_start(); echo 'Size: ', $this->size , '<br/>'; echo 'Color: ', $this->color , '<br/>'; echo 'Type: ', $this->type , '<br/>'; return ob_get_clean(); } } // 分别调用每个方法并不是最佳的做法 $product = new Product(); $product->setSize(100); $product->setColor('red'); $product->setType('shirt'); // echo $product; // ----------------------------------------------------------- /** * 建造者模式 * 将一个复杂对象的构建与它的表示分离,使同样的构建过程可以创建不同的表示 */ class ProductBuilder { private $product; private $configs; public function construct($cfgs) { $this->configs = $cfgs; $this->product = new Product(); } /** * 构建对象 */ public function buildProduct() { $this->product->setSize($this->configs['size']); $this->product->setColor($this->configs['color']); $this->product->setType($this->configs['type']); } public function getProduct() { return $this->product; } } $cfgs = array('size'=>100,'color'=>'blue','type'=>'shirt'); $builder = new ProductBuilder($cfgs); $builder->buildProduct(); echo $builder->getProduct();
以上就是PHP建造者模式代码示例详解的详细内容,更多请关注其它相关文章!
上一篇: PHP实现提取中英文首字母的方法
下一篇: 编写sqlhelper类示例
推荐阅读
-
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
-
PHP设计模式之建造者模式(Builder)原理与用法案例详解
-
php示例详解Constructor Prototype Pattern 原型模式
-
PHP设计模式(三)建造者模式Builder实例详解【创建型】
-
PHP观察者模式示例【Laravel框架中有用到】
-
Python设计模式之建造者模式实例详解
-
PHP设计模式之中介者模式(Mediator Pattern)入门与应用案例详解
-
PHP设计模式之观察者模式入门与应用案例详解
-
PHP使用观察者模式处理异常信息的方法详解
-
PHP设计模式之建造者模式(Builder)原理与用法案例详解