<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## Yii2事件   **[事件](http://www.yiichina.com/doc/guide/2.0/concept-events)**可以將自定義代碼“注入”到現有代碼中的特定執行點。附加自定義代碼到某個事件,當這個事件被觸發時,這些代碼就會自動執行。   例如,郵件程序對象成功發出消息時可觸發?`messageSend`?事件。如想追蹤成功發送的消息,可以附加相應追蹤代碼到?`messageSend`?事件。   Yii 引入了名為 `yii\base\Component` 的基類以支持事件。如果一個類需要觸發事件就應該繼承 `yii\base\Component` 或其子類。 ### 事件處理器 事件處理器是一個[PHP 回調函數](http://www.php.net/manual/en/language.types.callable.php),當它所附加到的事件被觸發時它就會執行。可以使用以下回調函數之一: * 對象名和方法名數組形式指定的對象方法,如?`[$object, $method]`?; ``` use app\events\MessageEvent; ... const EVENT_HELLO = 'sayHello'; public function actionIndex() { $event = new MessageEvent; $event->message = 'new message from actionIndex method'; $this->on(self::EVENT_HELLO,[$event,'hello']); $this->trigger(self::EVENT_HELLO,$event); // 打印 new message from actionIndex method } ``` 其中`app\events\MessageEvent`類代碼很簡單,如下: ``` <?php namespace app\events; use yii\base\Event; use Yii; class MessageEvent extends Event { public $message; public function hello($event) { echo $event->message; } } ``` * 類名和方法名數組形式指定的**靜態類方法**,如?`[$class, $method]`?; ``` use app\events\MessageEvent; ... const EVENT_HELLO = 'sayHello'; public function actionIndex() { $event = new MessageEvent; $event->message = 'new message from actionIndex method'; $this->on(self::EVENT_HELLO,['app\events\MessageEvent','hello']); $this->trigger(self::EVENT_HELLO,$event); } ``` 其中`app\events\MessageEvent`類代碼很簡單,如下: ``` <?php namespace app\events; use yii\base\Event; use Yii; class MessageEvent extends Event { public $message; static public function hello($event) { echo $event->message; } } ``` * 匿名函數,如?`function ($event) { ... }`?。 ``` const EVENT_HELLO = 'sayHello'; public function actionIndex() { $this->on(self::EVENT_HELLO,function ($event){ // 綁定一個Event事件 foreach ($event->data as $data){ echo strtoupper($data),PHP_EOL; } }, ['abc','dev']); $this->trigger(self::EVENT_HELLO); // 觸發事件 得到結果:ABC DEV } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看