シンプルなファクトリーモードの例 - シンプルな TV ファクトリー
//抽象产品类TV interface TV { public function play(); } //具体产品类HaierTv class HaierTV implements TV { public function play() { echo '海尔电视机播放中...<br>'; } } //具体产品类HisenseTV class HisenseTV implements TV { public function play() { echo '海信电视播放中...<br>'; } } class TVFactory { public static function produceTV($name) { switch ($name) { case 'Haier': echo '电视机工厂生产海尔电视机<br>';return new HaierTV(); case 'Hisense': echo '电视机工厂生产海信电视机<br>';return new HisenseTV(); default: echo '不能生产该电视机<br>';break; } } }
$factory = new TVFactory(); $tvstring = simplexml_load_file('configTV.xml'); foreach ($tvstring as $tv ) { $tmp = $factory->produceTV($tv->name); if ($tmp != NULL) { $tmp->play(); } }
テレビ工場はハイアールテレビを生産しています
ハイアールテレビが流れています...
テレビ工場はハイセンステレビを生産しています
ハイセンステレビが流れています...
以上、PHP シンプルファクトリーモードの内容を含めて紹介しましたが、PHP チュートリアルに興味のある方の参考になれば幸いです。