目录
观察者模式,观察者模式类图
首页 php教程 php手册 观察者模式,观察者模式类图

观察者模式,观察者模式类图

Jun 13, 2016 am 09:07 AM
观察者模式

观察者模式,观察者模式类图

观察者模式

<?<span>php
    </span><span>//</span><span>定义观察者调用接口</span>
    <span>class</span><span> transfer{
        </span><span>protected</span> <span>$_observers</span> = <span>array</span><span>();
        
        </span><span>//</span><span>注册对象</span>
        <span>public</span> <span>function</span> register(<span>$sub</span><span>){
            </span><span>$this</span>->_observers[] = <span>$sub</span><span>;    
        }
        
        </span><span>//</span><span>外部统一调用</span>
        <span>public</span> <span>function</span><span> trigger(){
            </span><span>if</span>(!<span>empty</span>(<span>$this</span>-><span>_observers)){
                </span><span>foreach</span>(<span>$this</span>->_observers <span>as</span> <span>$observer</span><span>){
                    </span><span>$observer</span>-><span>update();
                }    
            }
        }
    }
    
    </span><span>//</span><span>观察者接口</span>
    <span>interface</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update();
    }
    
    </span><span>//</span><span>实现观察者</span>
    <span>class</span> listen <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to do listen<br/>'<span>;
        }
    }
    
    </span><span>class</span> read <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to read<br/>'<span>;
        }
    }
    
    </span><span>class</span> speak <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to speak<br/>'<span>;
        }
    }
    
    </span><span>class</span> write <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to write<br/>'<span>;
        }
    }
    
    </span><span>$transfer</span> = <span>new</span><span> transfer();
    </span><span>$transfer</span>->register(<span>new</span><span> listen());
    </span><span>$transfer</span>->register(<span>new</span><span> read());
    </span><span>$transfer</span>->register(<span>new</span><span> speak());
    </span><span>$transfer</span>->register(<span>new</span><span> write());
    </span><span>$transfer</span>-><span>trigger();
    
    
    
    
    
    
    
    
    
    
    
    
    </span>
登录后复制

 

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何在Phalcon框架中使用事件管理器(Event Manager)实现观察者模式 如何在Phalcon框架中使用事件管理器(Event Manager)实现观察者模式 Aug 02, 2023 pm 07:25 PM

如何在Phalcon框架中使用事件管理器(EventManager)实现观察者模式简介:事件管理器(EventManager)是Phalcon框架中强大且灵活的核心功能之一。通过使用事件管理器,您可以轻松实现观察者模式,以便在应用程序中实现对象之间的松耦合。本文将为您介绍如何使用Phalcon框架中的事件管理器实现观察者模式,并提供相应的代码示例。步骤一

PHP 设计模式:通往代码卓越的道路 PHP 设计模式:通往代码卓越的道路 Feb 21, 2024 pm 05:30 PM

导言PHP设计模式是一组经过验证的解决方案,用于解决软件开发中常见的挑战。通过遵循这些模式,开发者可以创建优雅、健壮和可维护的代码。它们帮助开发者遵循SOLID原则(单一职责、开放-封闭、Liskov替换、接口隔离和依赖反转),从而提高代码的可读性、可维护性和可扩展性。设计模式的类型有许多不同的设计模式,每种模式都有其独特的目的和优点。以下是一些最常用的php设计模式:单例模式:确保一个类只有一个实例,并提供一种全局访问此实例的方法。工厂模式:创建一个对象,而不指定其确切类。它允许开发者根据条件

揭秘 PHP 设计模式的奥秘 揭秘 PHP 设计模式的奥秘 Feb 21, 2024 pm 01:19 PM

1.什么是PHP设计模式?PHP设计模式是预定义的代码模板,旨在解决常见的软件开发问题。它们提供了经过验证的解决方案,可以提高代码的可重用性、可维护性和可扩展性。2.PHP设计模式的类型php中有许多不同的设计模式,每种模式都有其特定的用途。最常见的模式包括:单例模式:确保一个类只有一个实例。工厂模式:根据传给它的数据创建不同类型的对象。策略模式:允许程序在运行时更改其行为。观察者模式:允许对象订阅事件并在事件发生时获得通知。3.单例模式示例classSingleInstance{private

提升Java编程技能:掌握适配器模式和观察者模式的实现方式 提升Java编程技能:掌握适配器模式和观察者模式的实现方式 Dec 23, 2023 am 11:52 AM

提升Java编程技能:掌握适配器模式和观察者模式的实现方式,需要具体代码示例引言:在日常的软件开发中,我们常常需要处理不同类之间的兼容性问题,同时也需要实现各种用户界面的事件监听和处理。适配器模式和观察者模式是两种常用的设计模式,它们能够有效地解决这些问题。本文将详细介绍适配器模式和观察者模式的实现方式,并提供具体的Java代码示例,帮助读者更好地理解。一、

PHP入门指南:观察者模式 PHP入门指南:观察者模式 May 20, 2023 am 08:21 AM

在现代软件开发中,设计模式是一种被广泛使用的概念。设计模式是存在于软件系统中的通用解决方案,它们经过测试和证明,可以帮助开发人员更高效地构建复杂的软件应用程序。观察者模式是其中一个很常见的设计模式,也是PHP开发者们需要掌握的一个重要的概念。在本文中,我们将介绍观察者模式的概念和实现方式,并演示如何在PHP应用程序中使用它。什么是观察者模式?观察者模式是一种

java框架中观察者模式的实现方式有哪些? java框架中观察者模式的实现方式有哪些? Jun 03, 2024 pm 05:05 PM

Java框架中的观察者模式通过接口和抽象类定义行为(1);Subject和Observer类实现管理和响应行为(2);Subject提供订阅和注销方法,维护观察者集合,并通知观察者(3)。示例中,Subject管理观察者并触发事件(4),ConcreteObserver响应事件(5)。

PHP中的观察者模式及其使用举例解释 PHP中的观察者模式及其使用举例解释 Jun 09, 2023 am 08:53 AM

PHP中的观察者模式及其使用举例解释观察者模式是一种软件设计模式,用于在对象之间建立一对多的依赖关系。在该模式下,当一个对象的状态发生改变时,所有依赖它的对象都会收到通知并自动更新。在PHP编程中,观察者模式是一种常用的设计模式,可以帮助我们优化和简化代码并提高代码的可读性和可维护性。下面将介绍PHP中观察者模式的基本方法和举例解释其使用。观察者模式的基本方

深入分析PHP面向对象编程中的观察者模式 深入分析PHP面向对象编程中的观察者模式 Aug 13, 2023 pm 06:34 PM

深入分析PHP面向对象编程中的观察者模式观察者模式是一种常用的设计模式,用于在软件系统中实现对象之间的松耦合。它的核心思想是:一个对象(称为被观察者或主题)维护一个依赖于它的对象列表(称为观察者),当被观察者的状态发生变化时,它会自动通知所有的观察者。通过这种方式,观察者模式可以实现对象间的一对多关系,当一个对象发生改变时,所有相关的对象都会得到通知,并且能

See all articles