Funktionsbeschreibung
1. Der Bridge-Modus trennt die abstrakte Schnittstelle und ihren Implementierungsteil, um eine Entkopplung zu erreichen, was eine bessere Lösung als Vererbung ist.
2. Der Bridging-Modus ist flexibler als die Vererbung. Er reduziert die Anzahl der erstellten Klassen und erleichtert auch die Kombination.
3. Der Brückenmodus kann für zwei unabhängige, sich ändernde Dimensionen verwendet werden.
Beispiel
// Mitarbeitergruppierung abstrakte Klasse Mitarbeiter { abstrakte öffentliche Funktion staffData(); } Die Klasse CommonStaff erweitert Staff { öffentliche Funktion staffData() { return „Spitzname, 小红, 小黑“; } } Die Klasse VipStaff erweitert Staff { öffentliche Funktion staffData() { return 'Xiaoxing, Xiaolong'; } } // Formular senden //Abstrakte übergeordnete Klasse, abstrakte Klasse SendType { abstrakte öffentliche Funktion send($to, $content); } Die Klasse QQSend erweitert SendType { öffentliche Funktion __construct() { // Verbindungsmethode mit QQ-Schnittstelle } öffentliche Funktion send($to, $content) { return $content. '(To '. $to ' From QQ)<br>'; } } Klasse SendInfo { geschützt $_level; protected $_method; öffentliche Funktion __construct($level, $method) { // Hier können Sie einen Singleton verwenden, um den Ressourcenverbrauch zu steuern $this->_level = $level; $this->_method = $method; } öffentliche Funktion senden($content) { $staffArr = $this->_level->staffData(); $result = $this->_method->send($staffArr, $content); echo $result; } } //Client-Anruf $info = new SendInfo(new VipStaff(), new QQSend()); $info->sending('Zum Abendessen nach Hause gehen'); $info = new SendInfo(new CommonStaff(), new QQSend()); $info->sending('Weiter zur Arbeit'); Ausgabeergebnis: Zum Abendessen nach Hause gehen (Nach Xiaoxing, Xiaolong Von QQ) Weiterarbeiten (An 小名, 小红, 小黑 Von QQ)
Das Obige ist die Funktion des PHP-Bridge-Modus. Ich hoffe, dass es für alle hilfreich ist.