목차
Minor【 PHP框架】5.事件,minorphp框架事件
백엔드 개발 PHP 튜토리얼 Minor【 PHP框架】5.事件,minorphp框架事件_PHP教程

Minor【 PHP框架】5.事件,minorphp框架事件_PHP教程

Jul 12, 2016 am 08:50 AM
php5

Minor【 PHP框架】5.事件,minorphp框架事件

5.1 事件Event

  Minor的 Event 类提供一个简单的观察者实现,允许您在应用程序里订阅与监听事件。

  5.1.1 订阅事件

  首先创建一个事件类:

<?<span>php

namespace App\Event;

</span><span>use</span><span> Minor\Event\Event;

</span><span>class</span> DemoEvent <span>extends</span><span> Event
{
    </span><span>private</span> <span>$name</span><span>;

    </span><span>public</span> <span>function</span> __construct(<span>$name</span><span>)
    {
        </span><span>$this</span>->name = <span>$name</span><span>;
    }

    </span><span>public</span> <span>function</span> setName(<span>$name</span><span>)
    {
        </span><span>$this</span>->name = <span>$name</span><span>;
    }

    </span><span>public</span> <span>function</span><span> getName()
    {
        </span><span>return</span> <span>$this</span>-><span>name;
    }
}</span>
로그인 후 복사

  然后在配置文件中注册这个事件:

<?<span>php
</span><span>return</span> <span>$events</span> =<span> [
    </span>'App\Event\DemoEvent'    =><span>    [
        </span>'App\Listener\DemoListener' => 'handle',<span>
    ]</span>,<span>
];</span>
로그인 후 복사

  5.1.2 触发事件

  Minor提供了一个事件管理类:Minor\Event\EventManger,通过调用该类的静态方法fire:EventManager::fire($event)就可以触发这个事件,例:

<span>class</span> FooController <span>extends</span><span> Controller
{
    </span><span>public</span> <span>function</span> bar(<span>$productName</span><span>)
    {
        </span><span>$event</span> = <span>new</span> DemoEvent('DemoEvent'<span>);
        EventManager</span>::fire(<span>$event</span><span>);
        </span>...<span>
    }
}</span>
로그인 후 복사

5.2 监听器

  当触发事件后事件管理器EventManager就会通过配置文件去触发监听器的制定方法。在5.1.1配置文件中我们配置了DemoEvent的监听器为App\Listener\DemoListener的handle方法,可以看一下这个类的实现:

<?<span>php

namespace App\Listener;

</span><span>use</span><span> App\Event\DemoEvent;
</span><span>use</span><span> Minor\Event\Listener;

</span><span>class</span> DemoListener <span>extends</span><span> Listener
{
    </span><span>public</span> <span>function</span> handle(DemoEvent <span>$event</span><span>)
    {
        </span><span>echo</span> '[DemoListener] handle the event:[' . <span>$event</span>->getName() .'] success!<br/><br/>'<span>;
    }
}</span>
로그인 후 복사

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1135179.htmlTechArticleMinor【 PHP框架】5.事件,minorphp框架事件 5.1 事件Event Minor的 Event 类提供一个简单的观察者实现,允许您在应用程序里订阅与监听事件。 5....
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

php5와 php8의 차이점은 무엇입니까 php5와 php8의 차이점은 무엇입니까 Sep 25, 2023 pm 01:34 PM

php5와 php8의 차이점은 성능, 언어 구조, 유형 시스템, 오류 처리, 비동기 프로그래밍, 표준 라이브러리 기능 및 보안 측면에서 있습니다. 자세한 소개: 1. 성능 향상 PHP5와 비교하여 PHP8은 JIT 컴파일러를 도입하여 일부 고주파 실행 코드를 컴파일하고 최적화하여 실행 속도를 향상시킵니다. PHP8에는 몇 가지 새로운 언어 구조와 기능이 도입되었습니다. PHP8은 명명된 매개변수를 지원하므로 개발자는 매개변수 순서 대신 매개변수 이름을 전달할 수 있습니다.

Jul 24, 2023 pm 04:57 PM

php5에서 포트 80을 변경하는 방법: 1. Apache 서버 구성 파일에서 포트 번호를 편집합니다. 2. PHP가 새 포트에서 작동하도록 PHP 구성 파일을 편집합니다. 3. Apache 서버를 다시 시작하면 PHP 응용 프로그램이 실행됩니다. 새 포트에서 실행을 시작합니다.

php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 Jul 10, 2023 pm 04:01 PM

php5가 포트 9000을 수신하지 않는 경우의 해결 단계: 1. PHP-FPM 구성 파일을 확인합니다. 2. PHP-FPM 서비스를 다시 시작합니다. 3. 방화벽을 끄거나 포트 전달을 구성합니다. 4. 다른 프로세스가 포트 9000을 사용하는지 확인합니다.

php7과 php5 구문의 차이점은 무엇입니까 php7과 php5 구문의 차이점은 무엇입니까 Jul 10, 2023 pm 03:25 PM

php7과 php5의 구문 차이점은 다음과 같습니다. 1. PHP7은 엄격한 유형 선언을 도입하지만 PHP5 변수 유형은 암시적입니다. 2. PHP7은 스칼라 유형 선언을 지원하지만 PHP5는 지원하지 않습니다. 3. PHP7은 NULL 병합 연산자를 도입합니다. PHP5는 변수가 존재하고 null이 아닌지 확인합니다. 조건문을 사용해야 합니다. 4. PHP7은 새로운 비교 연산자 "<=>"를 추가하지만 PHP5는 그렇지 않습니다. 5. PHP5는 새로운 기능인 익명 클래스를 도입합니다. 하지 않습니다.

php5에서 포트 80을 변경하는 방법 php5에서 포트 80을 변경하는 방법 Mar 21, 2023 pm 04:32 PM

​웹사이트 관리자라면 기본 포트인 80에서 PHP5 포트를 변경해야 하는 상황이 발생할 수 있습니다. 이 과정은 다소 시간이 걸릴 수 있지만, 아래 단계만 따라오시면 쉽게 완료됩니다.

php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 Mar 21, 2023 pm 04:32 PM

PHP5를 사용할 때 일부 사용자는 포트 9000을 수신할 수 없는 상황에 직면할 수 있습니다. 현재 이 문제를 해결하려면 일부 구성 및 문제 해결 작업을 수행해야 합니다.

php7 버전과 5 버전의 차이점은 무엇입니까? php7 버전과 5 버전의 차이점은 무엇입니까? Sep 15, 2023 pm 04:11 PM

php7과 5 버전의 차이점에는 성능 개선, 스칼라 유형 선언, 반환 값 유형 선언, 예외 처리 개선, 익명 클래스, 구문 개선, 새로운 연산자, 향상된 오류 처리 및 일부 이전 기능 제거가 포함됩니다. 세부 소개: 1. 성능 향상 PHP7은 Zend Engine 3.0이라는 새로운 Zend 엔진을 도입하여 향상된 메모리 관리, 최적화된 함수 호출 및 예외 처리를 통해 PHP5의 성능을 약 2배 향상시켰습니다. , 향상된 가비지 수집 등

PHP7과 PHP5의 구문 차이점에 대해 토론 PHP7과 PHP5의 구문 차이점에 대해 토론 Mar 21, 2023 pm 07:10 PM

PHP는 동적 웹사이트와 애플리케이션을 개발하는 데 널리 사용되는 서버측 프로그래밍 언어입니다. 최근에는 PHP7의 출시가 주목을 받고 있습니다. PHP7은 이전 버전(예: PHP5)에 비해 많은 개선과 최적화를 제공합니다. 이 기사에서는 PHP7과 PHP5의 구문 차이점을 살펴보겠습니다.

See all articles