PHP factory design pattern

From , 3 Years ago, written in PHP, viewed 222 times.
URL https://pastebin.vip/view/a78482ce
  1. <?php
  2.     //人类接口
  3.     interface IHuman
  4.     {
  5.      
  6.         function GetName();
  7.      
  8.     }
  9.      
  10.     //男人类,实现人类接口
  11.     class ManClass implements IHuman
  12.     {
  13.         //获取姓名方法
  14.         public function GetName()
  15.         {
  16.             return "I'm man."."<br>";
  17.              
  18.         }
  19.              
  20.     }
  21.      
  22.     //女人类,实现人类接口
  23.     class WomanClass implements IHuman
  24.     {
  25.         //获取姓名方法
  26.         public function GetName()
  27.         {
  28.             return "I'm Woman."."<br>";
  29.              
  30.         }
  31.              
  32.     }
  33.      
  34.     //类工厂,根据需要生产不同实例对象返回
  35.     class ManFactory
  36.     {
  37.         //根据参数获取实例对象
  38.         public function GetIHuman($IHuman="man")
  39.         {
  40.             if($IHuman=="woman")
  41.             {
  42.                 return new WomanClass();
  43.             }
  44.             else if($IHuman=="man")
  45.             {
  46.                 return new ManClass();
  47.             }
  48.             else
  49.             {
  50.                 return null;
  51.             }
  52.      
  53.         }
  54.         //直接获取woman类
  55.         public function GetWoman()
  56.         {
  57.             return new WomanClass();
  58.             //return new ManClass();
  59.         }
  60.         //直接获取man类
  61.         public function  GetMan()
  62.         {
  63.      
  64.             return new ManClass();
  65.         }
  66.     }
  67.  
  68.     $ManFactory=new ManFactory();
  69.      
  70.     $ManClass=$ManFactory->GetIHuman();
  71.      
  72.     echo $ManClass->GetName();
  73.      
  74.     $IHuman=$ManFactory->GetIHuman("woman");
  75.      
  76.     echo $IHuman->GetName();
  77.      
  78.     $Woman=$ManFactory->GetWoman();
  79.      
  80.     echo $Woman->GetName();
  81.      
  82.     $Man=$ManFactory->GetMan();
  83.      
  84.     echo $Man->GetName();
  85.  
  86. ?>

Reply to "PHP factory design pattern"

Here you can reply to the paste above

captcha

https://burned.cc - Burn After Reading Website