婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP觀察者模式定義與用法實例分析

PHP觀察者模式定義與用法實例分析

熱門標簽:十堰ai電話機器人效果怎么樣 上海公司外呼系統線路 臨沂智能電銷機器人軟件 銀川ai電話機器人 電梯外呼線路板維修視頻 安陽自動外呼系統價格是多少 地圖標注風向標 浙江外呼電話系統軟件 芒果電銷機器人

本文實例講述了PHP觀察者模式定義與用法。分享給大家供大家參考,具體如下:

我理解的觀察者模式就是,當我們觸發一個事件的時候,想要把這個操作告訴給我想要告訴的對象,讓他們都執行這個操作,就是將他們綁定到這個事件下。

1.定義一個基類(用于添加觀察者也就是我想要通知的對象,還有通知觀察者)

EventGenerator.php

?php
abstract class EventGenerator
{
  //存儲觀察者,因為可以有多個要通知的對象,所以是一個數組
  private $observers = array();
  //添加觀察者,也就是我想要通知的對象
  public function addObserver($observer)
  {
    $this->observers[] = $observer;
  }
  //通知觀察者
  public function notify()
  {
    //取出所有的對象去執行操作
    foreach($this->observers as $observer)
    {
      //這里我寫一個update方法,這里就要求我所有的通知對象必須要有update操作,所以一會我會定義一個借口,讓所有的觀察者強制實現這個方法
      $observer->update();
    }
  }
}
?>

定義接口文件,讓所有觀察者實現update方法Observer.php

?php
interface Observer
{
  function update();
}
?>

定義實現觀察者模式的文件Event.php

?php
header('Content-Type:text/html;charset=utf-8');
define('BASEDIR', __DIR___);
require 'Config.php';
spl_autoload_register('Config::autoload');
//定義事件類繼承基類
class Event extends EventGenerator
{
  //當觸發這個事件的時候通知所有的觀察者
  public function trigger()
  {
    echo '我要開始更新了啊!br/>\n';
    //基類的通知方法
    $this->notify();
  }
}
//添加觀察者1
class Observer1 implements Observer
{
  public function update()
  {
    echo '我是觀察者1,我收到你的通知了!我要干我該干的了!br/>\n';
  }
}
//添加觀察者2
class Observer2 implements Observer
{
  public function update()
  {
    echo '我是觀察者2,我收到你的通知了!我要干我該干的了!br/>\n';
  }
}
//下面就要開始測試了!
$event = new Event();
//添加觀察者到這個事件里
$event->addObserver(new Observer1);
$event->addObserver(new Observer2);
//執行trigger操作
$event->trigger();
//這時候就會顯示!
//我要開始更新了啊!
//我是觀察者1,我收到你的通知了!我要干我該干的了!
//我是觀察者2,我收到你的通知了!我要干我該干的了!
?>

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • PHP設計模式之觀察者模式入門與應用案例詳解
  • PHP 觀察者模式深入理解與應用分析
  • php模式設計之觀察者模式應用實例分析
  • PHP使用觀察者模式處理異常信息的方法詳解
  • php設計模式之觀察者模式定義與用法經典示例
  • PHP中常用的三種設計模式詳解【單例模式、工廠模式、觀察者模式】
  • PHP觀察者模式實例分析【對比JS觀察者模式】
  • PHP設計模式之觀察者模式定義與用法分析
  • 解析PHP觀察者模式Observer

標簽:遂寧 徐州 荊門 常州 武威 遵義 寧夏 吐魯番

巨人網絡通訊聲明:本文標題《PHP觀察者模式定義與用法實例分析》,本文關鍵詞  PHP,觀察者,模式,定義,與,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP觀察者模式定義與用法實例分析》相關的同類信息!
  • 本頁收集關于PHP觀察者模式定義與用法實例分析的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 南陵县| 重庆市| 纳雍县| 陇川县| 海门市| 惠来县| 宝丰县| 兖州市| 顺平县| 鹤壁市| 伊宁县| 秭归县| 丹凤县| 盘山县| 磴口县| 九寨沟县| 大庆市| 枣阳市| 曲阜市| 连平县| 洪江市| 泸溪县| 休宁县| 贺兰县| 班戈县| 泸州市| 土默特左旗| 吴旗县| 许昌市| 金溪县| 淮北市| 积石山| 新河县| 洪江市| 白沙| 长葛市| 汝州市| 游戏| 阳城县| 新巴尔虎左旗| 海安县|