Example #1
0
 public function makeProducts(AbstractFactory $factory)
 {
     $productA = $factory->createProductA();
     $productB = $factory->createProductB();
     $stdObject = new \stdClass();
     $stdObject->attributeA = $this->getAttributeA($productA);
     $stdObject->attributeB = $this->getAttributeB($productB);
     return $stdObject;
 }
Example #2
0
 /**
  * 调用工厂实例生成产品,输出产品名
  * @param   $factory    AbstractFactory     工厂实例
  */
 public static function run(AbstractFactory $factory)
 {
     $productA = $factory->createProductA();
     $productB = $factory->createProductB();
     printf("%s\n%s\n", $productA->getName(), $productB->getName());
 }