イベント機構はスキャン型とバインディング型の2種類に分かれており、バインディング型は主にYiiで使われており、バインディング型にはtrigger()とon()の2つのメソッドが関係します
1.trigger() : イベントは yii\base\Component::trigger() メソッドを呼び出すことによってトリガーされますが、このメソッドにはイベント名を渡す必要があります。 、イベント オブジェクトを渡してイベント ハンドラーにパラメーターを渡すこともできます。 (推奨される学習: yii チュートリアル )
2.on(): クラスのすべてのインスタンスが、指定されたインスタンスではなく、トリガーされたイベントに応答するようにしたい場合があります。イベントの場合、イベント ハンドラーを各インスタンスに 1 つずつアタッチするのではなく、静的メソッド yii\base\Event::on() を呼び出すことによってハンドラーがクラス レベルでアタッチされます。
具体的な例を見てみましょう: (猫とねずみを作成します。猫が鳴くと、ねずみが逃げ始めます)
#上記は cat.php クラスのコードです。スクリーンショットが不完全なので、さらに 2 つ追加します。mouse.php
## を見てみましょう。Extension:
##
以上がYii でイベントをバインドする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。