bin/swoftから、Swoftフレームワークのソースコード(7)--EventProcessorイベントプロセッサを読みます.
Beanプロセッサを通過する後、私たちの業務で使用するコンポーネントの多くは容器内に置かれています.私たちが使うときに容器からこのbeanオブジェクトを得ることができて、これは私たちの仕事を楽にしました.
まず、イベントプロセッサのエントリ方法を見てみましょう.
まとめ:
まず、イベントプロセッサのエントリ方法を見てみましょう.
public function handle(): bool
{
if (!$this->application->beforeEvent()) {
CLog::warning('Stop event processor by beforeEvent return false');
return false;
}
//
/** @var EventManager $eventManager */
$eventManager = bean('eventManager');
// ListenerRegister
// count1 ,count2
[$count1, $count2] = ListenerRegister::register($eventManager);
//
CLog::info('Event manager initialized(%d listener, %d subscriber)', $count1, $count2);
// Trigger a app init event
// APP
Swoft::trigger(SwoftEvent::APP_INIT_COMPLETE);
//
return $this->application->afterEvent();
}
まとめ:
bean , , .
, , Swoft\Event\ListenerRegister addListener addSubscriber .
, .