Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie das Beobachtermuster in PHP

So implementieren Sie das Beobachtermuster in PHP

墨辰丷
墨辰丷Original
2018-05-21 11:29:101917Durchsuche

In diesem Artikel wird hauptsächlich das in PHP implementierte Beobachtermuster vorgestellt und die Definition und Verwendung des Beobachtermusters in PHP anhand konkreter Beispiele analysiert.

Die Details lauten wie folgt:

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

Verwandte Empfehlungen:

BeobachtermodusSeite wechseln Menge

PHPBeobachtermuster Implementierungscode

PHP-Entwurfsmuster Beobachtermodus Ausführliche Erklärung

Das obige ist der detaillierte Inhalt vonSo implementieren Sie das Beobachtermuster in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn