项目作者: peter279k

项目描述 :
The demonstration of PHP factory design pattern.
高级语言: PHP
项目地址: git://github.com/peter279k/php-factory.git
创建时间: 2018-06-07T05:53:39Z
项目社区:https://github.com/peter279k/php-factory

开源协议:

下载


php-factory

Build Status
Coverage Status

Introduction

It’s about the factory design pattern implementation in this blog post.

Usage

Here is the example of creating the NyCar and NyHelicopter class instance via NyToysFactory.

NyCar class instance:

  1. $nyToyFactory = new NyToysFactory();
  2. $nyCar = $nyToyFactory->createToy('car'));
  3. echo $nyCar->price; //30
  4. echo $nyCar->name; //NyCar

NyHelicopter class instance:

  1. $nyToyFactory = new NyToysFactory();
  2. $nyHelicopter = $nyToyFactory->createToy('helicopter'));
  3. echo $nyHelicopter->price; //300000
  4. echo $nyHelicopter->name; //NyHelicopter

Prepare the NyCar

  1. $nyToyFactory = new NyToysFactory();
  2. $nyCar = $nyToyFactory->createToy('car');
  3. $nyCar->prepare();
  4. $wheels = $nyCar->wheels; //array count is 4
  5. foreach($wheels as $nyWheel) {
  6. echo $nyWheel->name; //wheel
  7. echo $nyWheel->number; //1
  8. }

Prepare the NyHelicopter

  1. $nyToyFactory = new NyToysFactory();
  2. $nyHelicopter = $nyToyFactory->createToy('helicopter');
  3. $nyHelicopter->prepare();
  4. $nyHelicopter->engine->name; //engine
  5. $nyHelicopter->rotorBlade->number; //1