事件機制一共分為兩種:掃碼式和綁定式,yii中主要用的是綁定式,而綁定式又涉及兩個方法:trigger()和on()
1. trigger() : 事件透過呼叫yii\base\Component::trigger() 方法觸發,此方法須傳遞事件名, 還可以傳遞一個事件對象,用來傳遞參數到事件處理器。 (建議學習:yii教學)
2. on() : 有時想要一個類別的所有實例而不是一個指定的實例都會回應一個被觸發的事件, 不是一個個附加事件處理器到每個實例, 而是透過呼叫靜態方法yii\base\Event::on() 在類別層級附加處理器。
具體的實例我們一起看一下:(創建一隻貓和一隻老鼠,當貓叫的時候,觸發老鼠就跑)
以上是cat.php類別中程式碼,由於截圖不全,就補上兩張,下面來看一下mouse.php
#怎麼才能把這兩個類別關聯起來呢,當然是要靠控制器來呼叫這兩個類嘍,(因為cat類已調用compoent類文件,所以此處用run就不用重新調用)
擴充功能:
以上是yii怎麼綁定事件的詳細內容。更多資訊請關注PHP中文網其他相關文章!