简单工厂模式实例-简单电视机工厂
//抽象产品类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(); } }
<?xml version="1.0" encoding="UTF-8"?> <tv> <haiertv> <name>Haier</name> </haiertv> <hisensetv> <name>Hisense</name> </hisensetv> </tv>运行结果
电视机工厂生产海尔电视机
海尔电视机播放中...
电视机工厂生产海信电视机
海信电视播放中...
以上就介绍了php 简单工厂模式,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。