亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁 php框架 YII yii2.0怎麼綁定事件

yii2.0怎麼綁定事件

Feb 17, 2020 pm 02:20 PM
yii 事件

yii2.0怎麼綁定事件

在yii2中,事件的綁定是透過yii\base\Component的on方法進行操作的,我們在定義事件的同時,需要為其綁定一個回呼函數(shù)。

看下例子,先寫下一個控制器,用on綁定事件,然後在方法裡面用triggle呼叫

namespace backend\controllers;

use yii\web\Controller;

class EventController extends Controller
{
   const TEST_EVENT = 'event';

    public function init()
    {
        parent::init();
        $this->on(self::TEST_EVENT,function(){echo '這個一個事件測試。。。';});
    }


    public function actionIndex()
    {
        $this->trigger(self::TEST_EVENT);
    }
}

存取index方法後得到事件的結(jié)果。在進入控制器的時候就給‘event’綁定了一個時間,on第一個參數(shù)表示事件名(必須是常數(shù)),第二個參數(shù)是這個事件的回呼函數(shù)。

(推薦教學(xué):yii框架

也可以寫成如下的方式:

namespace backend\controllers;

use yii\web\Controller;

class EventController extends Controller
{
   const TEST_EVENT = 'event';

    public function init()
    {
        parent::init();
        $this->on(self::TEST_EVENT,[$this,'onTest']);
    }


    public function onTest()
    {
        echo '這個一個事件測試。。。';
    }

    public function actionIndex()
    {
        $this->trigger(self::TEST_EVENT);
    }
}

$this表示的是本對象,'onTest'指的是執(zhí)行的方法。事件綁定好後沒有呼叫還是沒用,此時用到y(tǒng)ii\base\Compontent類別中的triggle方法來呼叫了。

事件的擴充運用(參數(shù)的傳入方法)

先定義一個控制器在裡面定義加調(diào)用,如果想要傳入不同的參數(shù)就要用到y(tǒng)ii\base\Event 類別了

class EventController extends Controller
{
    const TEST_USER = 'email'; //發(fā)送郵件
    public function init()
    {
        parent::init();
        $msg = new Msg();
        $this->on(self::TEST_USER,[$msg,'Ontest'],'參數(shù)Test');  
    }
    public function actionTest()
    {
        $msgEvent = new MsgEvent();
        $msgEvent->dateTime = 'Test時間';
        $msgEvent->author = 'Test作者';
        $msgEvent->content = 'Test內(nèi)容';
        $this->trigger(self::TEST_USER,$msgEvent);
    }
}
class MsgEvent extends Event
{
    public $dateTime;   // 時間
    public $author;     // 作者
    public $content;    // 內(nèi)容

}

msg裡面放的是呼叫的方法

class Msg extends ActiveRecord
{
    public function onTest($event) //$event是yii\base\Event的對象
    {
        print_r($event->author);//輸出'Test作者'
        print_r($event->dateTime);//輸出'Test時間'
        print_r($event->content);//輸出'Test內(nèi)容'
        print_r($event->data);//輸出'參數(shù)Test'

    }
}

更多程式相關(guān)內(nèi)容學(xué)習(xí),請造訪php中文網(wǎng)程式設(shè)計教學(xué)欄位!

以上是yii2.0怎麼綁定事件的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
在iPhone鎖定畫面上取得即將到來的日曆事件 在iPhone鎖定畫面上取得即將到來的日曆事件 Dec 01, 2023 pm 02:21 PM

在運行iOS16或更高版本的iPhone上,您可以直接在鎖定畫面上顯示即將到來的日曆事件。繼續(xù)閱讀以了解它是如何完成的。由於錶盤複雜功能,許多AppleWatch用戶習(xí)慣能夠看一眼手腕來查看下一個即將到來的日曆事件。隨著iOS16和鎖定螢?zāi)恍〔考某霈F(xiàn),您可以直接在iPhone上查看相同的日曆事件訊息,甚至無需解鎖設(shè)備。日曆鎖定螢?zāi)恍≡袃煞N風(fēng)格,可讓您追蹤下一個即將發(fā)生的事件的時間,或使用更大的小元件來顯示事件名稱及其時間。若要開始新增小元件,請使用面容ID或觸控ID解鎖iPhone,長按

如何使用 PHP 建立基於事件的應(yīng)用程式 如何使用 PHP 建立基於事件的應(yīng)用程式 May 04, 2024 pm 02:24 PM

在PHP中建構(gòu)基於事件的應(yīng)用程式的方法包括:使用EventSourceAPI建立事件來源,並在客戶端使用EventSource物件監(jiān)聽事件。使用伺服器傳送的事件(SSE)傳送事件,並在客戶端使用XMLHttpRequest物件監(jiān)聽事件。一個實用的例子是在電子商務(wù)網(wǎng)站中使用EventSource即時更新庫存計數(shù),在伺服器端透過隨機更改庫存並發(fā)送更新來實現(xiàn),客戶端則透過EventSource監(jiān)聽庫存更新並即時顯示。

jQuery中如何實作select元素的改變事件綁定 jQuery中如何實作select元素的改變事件綁定 Feb 23, 2024 pm 01:12 PM

jQuery是一個受歡迎的JavaScript函式庫,可以用來簡化DOM操作、事件處理、動畫效果等。在web開發(fā)中,常常會遇到需要對select元素進行改變事件綁定的情況。本文將介紹如何使用jQuery實作對select元素改變事件的綁定,並提供具體的程式碼範(fàn)例。首先,我們需要使用標(biāo)籤來建立一個包含選項的下拉式選單:

php框架laravel和yii區(qū)別是什麼 php框架laravel和yii區(qū)別是什麼 Apr 30, 2025 pm 02:24 PM

Laravel和Yii的主要區(qū)別在於設(shè)計理念、功能特性和使用場景。 1.Laravel注重開發(fā)的簡潔和愉悅,提供豐富的功能如EloquentORM和Artisan工具,適合快速開發(fā)和初學(xué)者。 2.Yii強調(diào)性能和效率,適用於高負(fù)載應(yīng)用,提供高效的ActiveRecord和緩存系統(tǒng),但學(xué)習(xí)曲線較陡。

如何在PHP專案中實現(xiàn)日曆功能和事件提醒? 如何在PHP專案中實現(xiàn)日曆功能和事件提醒? Nov 02, 2023 pm 12:48 PM

如何在PHP專案中實現(xiàn)日曆功能和事件提醒?在開發(fā)Web應(yīng)用程式時,行事曆功能和事件提醒是常見的需求之一。無論是個人日程管理、團隊協(xié)作,或是線上活動安排,行事曆功能都可以提供便利的時間管理和事務(wù)安排。在PHP專案中實現(xiàn)日曆功能和事件提醒可以透過以下步驟來完成。資料庫設(shè)計首先,需要設(shè)計資料庫表來儲存日曆事件的相關(guān)資訊。一個簡單的設(shè)計可以包含以下欄位:id:事件的唯一

深入研究jQuery中的關(guān)閉按鈕事件 深入研究jQuery中的關(guān)閉按鈕事件 Feb 24, 2024 pm 05:09 PM

深入理解jQuery中的關(guān)閉按鈕事件在前端開發(fā)過程中,經(jīng)常會遇到需要實現(xiàn)關(guān)閉按鈕功能的情況,例如關(guān)閉彈跳窗、關(guān)閉提示框等。而在使用jQuery這個流行的JavaScript函式庫時,實作關(guān)閉按鈕事件也變得異常簡單又方便。本文將深入探討如何利用jQuery來實現(xiàn)關(guān)閉按鈕事件,並提供具體的程式碼範(fàn)例,幫助讀者更好地理解和掌握這個技術(shù)。首先,我們需要了解在HTML中如何定

yii與Docker:容器化和部署您的應(yīng)用程序 yii與Docker:容器化和部署您的應(yīng)用程序 Apr 02, 2025 pm 02:13 PM

使用Docker容器化和部署Yii應(yīng)用的步驟包括:1.創(chuàng)建Dockerfile,定義鏡像構(gòu)建過程;2.使用DockerCompose啟動Yii應(yīng)用和MySQL數(shù)據(jù)庫;3.優(yōu)化鏡像大小和性能。這不僅涉及到具體的技術(shù)操作,還包括理解Dockerfile的工作原理和最佳實踐,以確保高效、可靠的部署。

掌握J(rèn)avaScript中常見的事件冒泡機制 掌握J(rèn)avaScript中常見的事件冒泡機制 Feb 19, 2024 pm 04:43 PM

JavaScript中常見的冒泡事件:掌握常用事件的冒泡特性,需要具體程式碼範(fàn)例引言:在JavaScript中,事件冒泡是指事件會從嵌套層次最深的元素開始向外層元素傳播,直到傳播到最外層的父級元素。了解並掌握常見的冒泡事件,可以幫助我們更好地處理使用者互動和事件處理。本文將介紹一些常見的冒泡事件,並提供具體的程式碼範(fàn)例來幫助讀者更好地理解。一、點擊事件(click

See all articles