在yii2中,事件的綁定是通過yii\base\Component的on方法進(jìn)行操作的,我們?cè)诙x事件的同時(shí),需要為其綁定一個(gè)回調(diào)函數(shù)。
看下例子,先寫下一個(gè)控制器,用on綁定事件,然后在方法里面用triggle調(diào)用
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 '這個(gè)一個(gè)事件測(cè)試。。。';}); } public function actionIndex() { $this->trigger(self::TEST_EVENT); } }
訪問index方法后得到事件的結(jié)果。在進(jìn)入控制器的時(shí)候就給‘event’綁定了一個(gè)時(shí)間,on第一個(gè)參數(shù)表示事件名(必須是常量),第二個(gè)參數(shù)是這個(gè)事件的回調(diào)函數(shù)。
(推薦教程: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 '這個(gè)一個(gè)事件測(cè)試。。。'; } public function actionIndex() { $this->trigger(self::TEST_EVENT); } }
$this表示的是本對(duì)象,‘onTest’指的是執(zhí)行的方法。事件綁定好后沒有調(diào)用還是沒用,此時(shí)用到y(tǒng)ii\base\Compontent類中的triggle方法來調(diào)用了。
事件的擴(kuò)展運(yùn)用(參數(shù)的傳入方法)
先定義一個(gè)控制器在里面定義加調(diào)用,如果想要傳入不同的參數(shù)就要用到 yii\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時(shí)間'; $msgEvent->author = 'Test作者'; $msgEvent->content = 'Test內(nèi)容'; $this->trigger(self::TEST_USER,$msgEvent); } }
class MsgEvent extends Event { public $dateTime; // 時(shí)間 public $author; // 作者 public $content; // 內(nèi)容 }
msg里面放的是調(diào)用的方法
class Msg extends ActiveRecord { public function onTest($event) //$event是yii\base\Event的對(duì)象 { print_r($event->author);//輸出'Test作者' print_r($event->dateTime);//輸出'Test時(shí)間' print_r($event->content);//輸出'Test內(nèi)容' print_r($event->data);//輸出'參數(shù)Test' } }
更多編程相關(guān)內(nèi)容學(xué)習(xí),請(qǐng)?jiān)L問php中文網(wǎng)編程教程欄目!
Atas ialah kandungan terperinci yii2.0怎么綁定事件. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pada iPhone yang menjalankan iOS 16 atau lebih baru, anda boleh memaparkan acara kalendar akan datang terus pada skrin kunci. Baca terus untuk mengetahui cara ia dilakukan. Terima kasih kepada komplikasi muka jam tangan, ramai pengguna Apple Watch sudah terbiasa melihat pergelangan tangan mereka untuk melihat acara kalendar yang akan datang. Dengan kemunculan iOS16 dan widget skrin kunci, anda boleh melihat maklumat acara kalendar yang sama terus pada iPhone anda tanpa membuka kunci peranti. Widget Skrin Kunci Kalendar datang dalam dua perisa, membolehkan anda menjejaki masa acara akan datang yang seterusnya, atau menggunakan widget yang lebih besar yang memaparkan nama acara dan masanya. Untuk mula menambah widget, buka kunci iPhone anda menggunakan Face ID atau Touch ID, tekan dan tahan

Kaedah untuk membina aplikasi berasaskan acara dalam PHP termasuk menggunakan EventSourceAPI untuk mencipta sumber acara dan menggunakan objek EventSource untuk mendengar acara di sisi pelanggan. Hantar acara menggunakan Peristiwa Dihantar Pelayan (SSE) dan dengar acara pada sisi klien menggunakan objek XMLHttpRequest. Contoh praktikal ialah menggunakan EventSource untuk mengemas kini kiraan inventori dalam masa nyata dalam tapak web e-dagang Ini dicapai pada bahagian pelayan dengan menukar inventori dan menghantar kemas kini secara rawak, dan pelanggan mendengar kemas kini inventori melalui EventSource dan memaparkannya dalam. masa sebenar.

jQuery ialah perpustakaan JavaScript popular yang boleh digunakan untuk memudahkan manipulasi DOM, pengendalian acara, kesan animasi, dll. Dalam pembangunan web, kami sering menghadapi situasi di mana kami perlu menukar pengikatan acara pada elemen terpilih. Artikel ini akan memperkenalkan cara menggunakan jQuery untuk mengikat acara perubahan elemen terpilih, dan memberikan contoh kod khusus. Pertama, kita perlu mencipta menu lungsur dengan pilihan menggunakan label:

Perbezaan utama antara Laravel dan Yii adalah konsep reka bentuk, ciri -ciri fungsional dan senario penggunaan. 1. Laravel memberi tumpuan kepada kesederhanaan dan keseronokan pembangunan, dan menyediakan fungsi yang kaya seperti alat eloquentorm dan artisan, sesuai untuk pembangunan dan pemula yang pesat. 2.YII menekankan prestasi dan kecekapan, sesuai untuk aplikasi beban tinggi, dan menyediakan sistem Activerecord dan cache yang cekap, tetapi mempunyai lengkung pembelajaran yang curam.

Bagaimana untuk melaksanakan fungsi kalendar dan peringatan acara dalam projek PHP? Fungsi kalendar dan peringatan acara adalah salah satu keperluan biasa semasa membangunkan aplikasi web. Sama ada pengurusan jadual peribadi, kerjasama pasukan atau penjadualan acara dalam talian, fungsi kalendar boleh menyediakan pengurusan masa dan pengaturan transaksi yang mudah. Melaksanakan fungsi kalendar dan peringatan acara dalam projek PHP boleh diselesaikan melalui langkah berikut. Reka bentuk pangkalan data Pertama, anda perlu mereka bentuk jadual pangkalan data untuk menyimpan maklumat tentang acara kalendar. Reka bentuk ringkas boleh mengandungi medan berikut: id: unik untuk acara tersebut

Langkah -langkah untuk membekalkan dan menggunakan aplikasi YII menggunakan Docker termasuk: 1. Buat Dockerfile dan tentukan proses bangunan imej; 2. Gunakan DockerCompose untuk melancarkan aplikasi YII dan pangkalan data MySQL; 3. Mengoptimumkan saiz dan prestasi imej. Ini melibatkan bukan sahaja operasi teknikal tertentu, tetapi juga memahami prinsip kerja dan amalan terbaik Dockerfile untuk memastikan penggunaan yang cekap dan boleh dipercayai.

Pemahaman mendalam tentang peristiwa butang tutup dalam jQuery Semasa proses pembangunan bahagian hadapan, kita sering menghadapi situasi di mana kita perlu melaksanakan fungsi butang tutup, seperti menutup tetingkap pop timbul, menutup kotak gesaan, dsb. Apabila menggunakan jQuery, perpustakaan JavaScript yang popular, ia menjadi sangat mudah dan mudah untuk melaksanakan acara butang tutup. Artikel ini akan menyelidiki cara menggunakan jQuery untuk melaksanakan acara butang tutup, dan menyediakan contoh kod khusus untuk membantu pembaca memahami dan menguasai teknologi ini dengan lebih baik. Pertama, kita perlu memahami bagaimana untuk menentukan

Peristiwa menggelegak biasa dalam JavaScript: Untuk menguasai ciri menggelegak acara biasa, contoh kod khusus diperlukan Pengenalan: Dalam JavaScript, acara menggelegak bermakna peristiwa itu akan merambat dari elemen dengan tahap bersarang paling dalam ke elemen luar sehingga ia merambat ke. Unsur induk paling luar. Memahami dan menguasai acara menggelegak biasa boleh membantu kami mengendalikan interaksi pengguna dan pengendalian acara dengan lebih baik. Artikel ini akan memperkenalkan beberapa peristiwa menggelegak biasa dan memberikan contoh kod khusus untuk membantu pembaca memahami dengan lebih baik. 1. Klik acara (klik
