网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

PHP设计模式-观察者-创新互联

PHP设计模式-观察者

创新互联建站致力于互联网品牌建设与网络营销,包括网站设计、成都做网站、SEO优化、网络推广、整站优化营销策划推广、电子商务、移动互联网营销等。创新互联建站为不同类型的客户提供良好的互联网应用定制及解决方案,创新互联建站核心团队十年专注互联网开发,积累了丰富的网站经验,为广大企业客户提供一站式企业网站建设服务,在网站建设行业内树立了良好口碑。

  一个对象状态发生改变后,会影响到其他几个对象的改变,这时候可以用观察者模式。一个对象通过添加一个attach方法允许观察者注册自己,使本身变得可观察。当被观察的对象更改时,它会将消息发送到已注册的观察者。观察者使用该信息执行的操作与被观察的对象无关。观察者模式是一种事件系统,意味着这一模式允许某些类通过观察被观察类的状态变化,做出相应的动作。

 观察者模式UML图

PHP设计模式-观察者

  php5中提供了观察者observer与被观察者subject接口

  interface SplSubject

  {

    function attach(SplObserver $observer);

    function detach(SplObserver $observer);

    function notify();

  }

  interface SqlObserver

  {

    function update(SplSubject $subject);

  }

 例子如下

lognum= rand(1,10);       $this->hobby= $hobby;       $this->observers=new SplObjectStorage();   }   public function login(){     $this->notify();   }      public function attach(SPLObserver $observer){     $this->observers->attach($observer);   }      public function detach(SPLObserver $observer){       $this->observers->detach($observer);   }      public function notify(){       $this->observers->rewind();       while($this->observers->valid){          $observer= $this->observers->current();          $observer->update($this);          $this->observers->next();       }         }       }       class secrity implements SPLObserver{              public function update(SplSubject $subject){           if($subject->lognum>=3){                          }else{                          }                 }   }        class ad implements SPLObserver{          public function update(SplSubject $subject){           if($subject->hobby=="sports"){              }else{              }         }   }      //实施观察   $user= new user("sports");   $user->attach(new secrity());   $user->attach(new ad());   $user->login();      ?>

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章标题:PHP设计模式-观察者-创新互联
网站链接:http://bjjierui.cn/article/iesce.html

其他资讯