Explication détaillée et cas du mode pont PHP

墨辰丷
Libérer: 2023-03-25 22:14:01
original
1747 Les gens l'ont consulté

Cet article présente principalement l'explication détaillée et les cas du mode pont PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Le mode Bridge (Bridge) est un mode structurel d'objet qui sépare la partie abstraite de la partie implémentation afin qu'elles puissent changer indépendamment.
En résumé, dans plusieurs dimensions, leurs changements respectifs ne s'influencent pas. Certaines associations sont établies par pontage et une combinaison dynamique est réalisée.

C'est comme lorsque nous mangeons un bol de riz avec divers plats, comme un bol de riz au poivron vert et au porc râpé, un bol de riz aux pommes de terre et au bœuf.

Aliment de base : riz, nouilles.
Aliment complémentaire : émincé de porc au poivron vert, pommes de terre et bœuf.

Les aliments de base et les aliments complémentaires sont deux dimensions différentes, et chacun peut continuer à ajouter des types. Par exemple : les aliments complémentaires peuvent ajouter un autre poireau, un œuf, etc., et peuvent être combinés les uns avec les autres.

Le code d'enregistrement est le suivant :

/**       
 * Created by Sublime.       
 * User: Ryan       
 * Date: 2018/1/22       
 * File:Bridge.php       
 */        
    
/** 抽象一个主食类      
 *  abstract Food          
 */    
abstract Class Food  
{  
    public $dishes; // 一开始会赋值对象  
    abstract function MakeFood();  
}  
  
/** 盖浇饭类 继承主食类     
 *  Rice          
 */    
Class Rice extends Food  
{  
    function MakeFood()  
    {  
        $this->dishes->MakeDishes();  
        echo "盖浇饭<br/>";  
    }  
}  
  
/** 盖浇面类 继承主食类     
 *  Noodle          
 */  
Class Noodle extends Food  
{  
    function MakeFood()  
    {  
        $this->dishes->MakeDishes();  
        echo "盖浇面<br/>";  
    }  
}  
  
  
/** 菜肴接口     
 *  interface Dishes          
 */  
interface Dishes  
{  
    function MakeDishes();  
}  
  
/** 青椒肉丝类 继承菜肴接口   
 *  QJRS          
 */  
Class QJRS implements Dishes  
{  
   function MakeDishes(){  
       echo "青椒肉丝";  
   }      
}  
  
/** 土豆牛肉类 继承菜肴接口   
 *  TDNR          
 */  
Class TDNR implements Dishes  
{  
   function MakeDishes(){  
       echo "土豆牛肉";  
   }      
}
Copier après la connexion
<?php    
// 桥接模式 index.php  
header("Content-Type:text/html;charset=utf-8");  
require_once "Bridge.php";    
  
// 要一份盖浇饭  
$rice = new Rice();  
  
// 浇头要 青椒肉丝  
$rice->dishes = new QJRS();  
  
// 上菜  
$rice->MakeFood();  
  
// 同样的要一份盖浇饭  
$rice = new Rice();  
  
// 这次改了浇头要 土豆牛肉  
$rice->dishes = new TDNR();  
  
// 上菜  
$rice->MakeFood();
Copier après la connexion


Résultat de sortie :

Bol de riz au poivron vert et au porc râpé
Pomme de terre et bœuf bol de riz

Recommandations associées :

Mode pont de modèles de conception PHP

Série de modèles de conception JavaScript 6 : Mode pont

Comment configurer une IP statique en mode pont Linux

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal