设计模式--简单工厂

家住魔仙堡 提交于 2019-12-05 12:11:23

目标创建对象;

实现 1;实现工厂类 2;调用测试

 

<?php//调用工厂类require_once "./jiandangongcheng.php";
$po = array();
$po[] = pro::GetInstance(12,1);
$po[] = pro::GetInstance(1,11);
$po[] = pro::GetInstance(1,1);

foreach ($po as $key => $value) {
    if ($value) {
        echo "<br/>";
        $value->x_caozuo();
        echo "<br/>";
        $value->Y_caozuo();
    }else {
        echo "非法";
    }
    echo "<br/>";
}

 

  

 1 <?php
 2  //实现工厂类
 3 interface product{
 4     function X_caozuo();
 5     function Y_caozuo();
 6 }
 7 
 8 class Xproduct implements product{
 9     
10     function X_caozuo(){
11         echo "我实现了X操作";
12     }
13     function Y_caozuo() {
14         echo "我没有实现Y_操作 ";
15     }
16 
17 }
18 
19 class Yproduct implements product {
20 
21     function x_caozuo() {
22         echo "类Yproduct 没有实现X操作";
23     }
24     function Y_caozuo() {
25         echo "类Yproduct 实现Y操作";
26     }
27 }
28 
29 
30 class pro{
31     static function GetInstance($x,$y){
32         if ($x>1 && $y===1) {
33             return new Xproduct();
34         }elseif ($x == 1 && $y >1) {
35             return new Yproduct();
36         } else {
37             return null;
38         }
39     }
40 }

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!