<?php header('Content-Type:text/html;charset=utf-8'); /* * 建造者模式【造人】 * Author: Kaysen */ define('ROOT_PATH', dirname(__FILE__)); require_once ROOT_PATH . '/../../Loader.php'; $person = new PersonThinBuilder(300, 300); $pdThin = new PersonDirector($person); $pdThin->createPerson(); /* $person = new PersonFatBuilder(300, 300); $pdThin = new PersonDirector($person); $pdThin->createPerson(); */
<?php namespace PDP\Builder\Person; require_once __DIR__ . '/../../../vendor/autoload.php'; $director = new PersonDirector(); $employedMaleBuilder = new EmployedMaleBuilder(); $unemployedMaleBuilder = new UnemployedMaleBuilder(); //$employedFemaleBuilder = new EmployedFemaleBuilder(); //$unemployedFemaleBuilder = new UnemployedFemaleBuilder(); /** * object(Person)#3 (2) { * ( * ["employed"] => bool(true) * ["gender"] => string(4) "Male" * ) */ $employedMale = $director->build($employedMaleBuilder); echo '<pre>'; var_dump($employedMale); /** * object(Person)#5 (2) { * ( * ["employed"] => bool(false) * ["gender"] => string(4) "Male" * ) */ $unemployedMale = $director->build($unemployedMaleBuilder); var_dump($unemployedMale);