A-A+

用PHP代码实现简单的工厂模式

2022年06月10日 我爱编程 暂无评论

PHP代码实现简单的工厂模式方法

1、定义抽象基类

  1. //家禽类
  2. abstract class Fowl
  3. {
  4.     abstract public function eat();//吃方法
  5. }

2、定义子类

  1. //牛类
  2. class Cattle extends Fowl
  3. {
  4.     public function eat()
  5.     {
  6.         echo "我是牛,我吃草";
  7.     }
  8. }
  9. //鸭类
  10. class Duck extends Fowl
  11. {
  12.     public function eat()
  13.     {
  14.         echo "我是鸭,我吃鱼";
  15.     }
  16. }
  17. //羊类
  18. class Sheep extends Fowl
  19. {
  20.     public function eat()
  21.     {
  22.         echo "我是羊,我吃草";
  23.     }
  24. }

3、工厂类

  1. //工厂类
  2. class Factory
  3. {
  4.     public static function create($fowlName)
  5.     {
  6.         switch ($fowlName) {
  7.             case 'Cattle':
  8.                 return new Cattle();
  9.                 break;
  10.             case 'Duck':
  11.                 return new Duck();
  12.                 break;
  13.             case 'Sheep':
  14.                 return new Sheep();
  15.                 break;
  16.         }
  17.     }
  18. }

4、客户端

  1. $cattle = Factory::create('Cattle');
  2. $cattle->eat();//我是牛,我吃草
  3. $duck = Factory::create('Duck');
  4. $duck->eat();//我是鸭,我吃鱼
  5. $sheep = Factory::create('Sheep');
  6. $sheep->eat();//我是羊,我吃草

给我留言

Copyright © 四季博客 保留所有权利.   Theme  Ality

用户登录