<?php interface CoffeeMaker { public function brew(); } class DefaultCoffeeMaker implements CoffeeMaker { public function brew() { return 'Making coffee.'; } } class FancyCoffeeMaker implements CoffeeMaker { public function brew() { return 'Crafting a beautiful coffee just for you.'; } } class CoffeeMakerFactory { public static function createCoffeeMaker($type) { switch ($type) { case 'default': return new DefaultCoffeeMaker(); case 'fancy': return new FancyCoffeeMaker(); default: throw new Exception('Invalid coffee maker type.'); } } } function makecoffee($type = 'default') { $coffeeMaker = CoffeeMakerFactory::createCoffeeMaker($type); return $coffeeMaker->brew(); } echo makecoffee(); echo makecoffee('fancy');
这段代码使用工厂模式来实现了创建不同类型的咖啡机,根据传入的参数来选择使用默认的咖啡机还是精致的咖啡机。