Abstract Factory php-

Goal: Create There are examples of dependency; (packages)

? < PHP
 // abstract foods 
interface IAllayFood {
     function Allay ();

}
interface IDrinkFood {
    function Drink();
}

 

? < PHP
 // abstract class for food - "customer 
interface Ifactorys {
     function getAllayFood ();
     function getDrinckFood ();
}

 

<?php 
include "D:\\xxxx\cx_gc.php";
class Afactory implements Ifactorys
{
    function getAllayFood ()
    {
        return  new new hanbao ();
    }

    function getDrinckFood()
    {
        return new coco();
    }
}


class Bfactory implements Ifactorys
{
    function getAllayFood ()
    {
        return new chicken();
    }

    function getDrinckFood()
    {
        return  new new Baishi ();
    }
}

 

<?php
include "D:\\xxxx\cp_cx.php";
class chicken implements IAllayFood 
{
    function Allay () {
         echo 'sister solution to chicken hungry' "a." ;
    }
}

class hanbao implements IAllayFood 
{
    function Allay() {
    
        echo 'sister Hamburg solution to hunger' "a." ;
    }
}


class coco implements IDrinkFood 
{
    function . Drink. () {
         echo 'Coca sister solution to hunger' "a." ;
    }
}

class baishi implements IDrinkFood 
{
    function . Drink. () {
         echo 'Best cola solution sister hungry' "a." ;
    }
}

 

<?php
require "./jt_sl.php";
require "./jt_gc.php";

$a = new Afactory();
$b = new Bfactory();

$achi = $a->getAllayFood()->Allay();
$ahe = $a->getDrinckFood()->Drink();
//print_r($ahe);die;


$achi = $b->getAllayFood()->Allay();
$ahe = $b->getDrinckFood()->Drink();

 

Guess you like

Origin www.cnblogs.com/songyanan/p/11963688.html