Рубрики
Uncategorized

Примеры шаблонов наблюдателей PHP [Сравнение шаблонов наблюдателей JS]

Автор оригинала: David Wong.

Эта статья иллюстрирует шаблон PHP observer примерами. Поделитесь для вашей справки следующим образом:

1. Реализация режима наблюдателя с помощью JS





    
    



 

Switching Page Styles in Observer Mode

< button onclick = "t1 ()">observational learning area < button onclick = "t2 ()"> no observation learning area < div > I am content
I’m an advertisement
Learning

2. Реализация режима наблюдения с помощью PHP

php
//PHP implementation observer
// The interface between observer and subject is provided in PHP5
class User implements SplSubject
{
    public $lognum;
    public $hobby;
    protected $observers = null;
    public function __construct($hobby)
    {
        $this->lognum = rand(1,10);
        $this->hobby = $hobby;
        $this->observers = new SplObjectStorage();
    }
    public function login()
    {
        // Operating sessions, etc.
        $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();
        }
    }
}
// User Security Login Module
class Safe implements SPLObserver
{
    public function update(SplSubject $subject)
    {
        if ($subject->lognum < 3) {
            Echo 'this is the'. $subject - > lognum. 'secure login < br >';
        }else{
            Echo'This is'. $subject - > lognum.'Log in again, exception < br >';
        }
    }
}
//Advertising module
class Ad implements SPLObserver
{
    public function update(SplSubject $subject)
    {
        if ($subject->hobby == 'sports') {
            Echo'The Premier League has begun 
; }else{ Echo'Study hard < br >'; } } } // Implementation Observation // $user = new User('sports'); $user = new User('study'); $user->attach(new Safe()); $user->attach(new Ad()); $user - > login ();// login

Больше читателей, интересующихся контентом, связанным с PHP, могут ознакомиться с темами этого сайта: Введение в объектно-ориентированное программирование Php, Введение в навыки работы с массивами PHP, Введение в базовую грамматику PHP, Краткое описание работы с PHP и использования операторов, Краткое описание использования строк Php, Введение в работу с базой данных php+mysql и общие операции с базами данных php. Краткое изложение навыков

Я надеюсь, что эта статья будет полезна для разработки PHP – программ для всех.