php实现简单工厂模式-创新互联

简单工厂模式,又称为静态工厂模式,在其工厂类中通过一个公有的静态方法返回每个类的实例。

我们注重客户提出的每个要求,我们充分考虑每一个细节,我们积极的做好成都网站制作、成都网站建设、外贸营销网站建设服务,我们努力开拓更好的视野,通过不懈的努力,创新互联赢得了业内的良好声誉,这一切,也不断的激励着我们更好的服务客户。 主要业务:网站建设,网站制作,网站设计,微信小程序定制开发,网站开发,技术开发实力,DIV+CSS,PHP及ASP,ASP.Net,SQL数据库的技术开发工程师。

代码:

//家禽接口

interface fowl

{

 public function eat(){};

 public function breed(){};

}

//母鸡类

class hen implements fowl

{

 public function eat()

 {

  echo "我是鸡,我吃稻子和虫子!";

 }

 public function breed()

 {

  echo "我会生鸡蛋,咯咯蛋!";

 }

}

//鸭子类

class duck implements fowl

{

 public function eat()

 {

  echo "我是鸭子,我要吃鱼!";

 }

 public function breed()

 {

  echo "我会生鸭蛋,嘎嘎嘎!";

 }

}

class nofowlException extends Exception

{

 public $msg;

 public $errType;

 public function __construct($msg='',$errType=0)

 {

  $this->msg=$msg;

  $this->errType=$errType;

 }

}

//饲养员

class breeder

{

 public static function factory($fowl)

 {

  switch($fowl)

  {

   case 'hen':

   return new hen();

   break;

   case 'duck':

   return new duck();

   break;

   default:

   throws new nofowlException('对不起我们暂时还没有养这种家禽');

   break;

  }

 }

}

//主程序

$hen=breeder::factory('hen');

$hen->eat();//输出我是鸡,我吃稻子和虫子!"

$hen->breed();//输出我会生鸡蛋,咯咯蛋!

$duck=breeder::factory('duck');

$duck->eat();//我是鸭子,我要吃鱼!

$duck->breed();//我会生鸭蛋,嘎嘎嘎!

$goose->breeder::factory('goose');//输出对不起我们暂时还没有养这种家禽

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文名称:php实现简单工厂模式-创新互联
本文地址:http://myzitong.com/article/gsojd.html