微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php观察者模式应用场景实例详解

本文实例讲述了PHP观察者模式的应用。分享给大家供大家参考,具体如下:

rush:PHP;"> _observers as $obs ) $obs->onBuyTicketover ( $this,$ticket ); //$this 可用来获取主题类句柄,在通知中使用 } //添加通知 public function addobserver($observer) //添加N个通知 { $this->_observers [] = $observer; } } #=========================定义多个通知==================== //短信日志通知 class HipiaoMSM implements ITicketobserver { public function onBuyTicketover($sender,$ticket) { echo (date ( 'Y-m-d H:i:s' ) . " 短信日志记录:购票成功:$ticket
"); } } //文本日志通知 class HipiaoTxt implements ITicketobserver { public function onBuyTicketover($sender,$ticket) { echo (date ( 'Y-m-d H:i:s' ) . " 文本日志记录:购票成功:$ticket
"); } } //抵扣卷赠送通知 class HipiaoDiKou implements ITicketobserver { public function onBuyTicketover($sender,$ticket) { echo (date ( 'Y-m-d H:i:s' ) . " 赠送抵扣卷:购票成功:$ticket 赠送10元抵扣卷1张。
"); } } #============================用户购票==================== $buy = new HipiaoBuy (); $buy->addobserver ( new HipiaoMSM () ); //根据不同业务逻辑加入各种通知 $buy->addobserver ( new HipiaoTxt () ); $buy->addobserver ( new HipiaoDiKou () ); //购票 $buy->buyTicket ( "一排一号" ); ?>

运行结果如下:

rush:xhtml;"> 2017-02-03 10:25:45 短信日志记录:购票成功:一排一号 2017-02-03 10:25:45 文本日志记录:购票成功:一排一号 2017-02-03 10:25:45 赠送抵扣卷:购票成功:一排一号 赠送10元抵扣卷1张。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》、《》及《

希望本文所述对大家PHP程序设计有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐