国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

YII框架實現(xiàn)自定義第三方擴展操作示例

2024-05-05 00:08:35
字體:
供稿:網(wǎng)友

本文實例講述了YII框架實現(xiàn)自定義第三方擴展操作。分享給大家供大家參考,具體如下:

YII框架,第三方擴展

cat.php

<?php/** * Created by PhpStorm. * Date: 2016/5/25 * Time: 15:23 */namespace vendor/animal;use /yii/base/Component;//組件use /yii/base/Event;//class myEvent extends Event{  public $message;}class Cat extends Component{  public function shout(){    echo "miao miao miao<br>";    //$this->trigger('miao');//事件命名    $me = new myEvent();    $me->message = "hello my Event<br>";    $this->trigger('miao',$me);  }}

Dog.php

<?php/** * Created by PhpStorm. * Date: 2016/5/25 * Time: 17:00 */namespace vendor/animal;use frontend/behaviors/behavior1;use yii/base/Component;//讓一個類擁有接收行為的能力class Dog extends Component{  public function behaviors(){    return [      Behavior1::className(),    ];  }  public function look()  {    echo "I am looking!<br>";  }}

Mouse.php

<?php/** * Created by PhpStorm. * Date: 2016/5/25 * Time: 15:23 */namespace vendor/animal;class Mouse{  public function run($e)  {    echo $e->message;    echo "I am running!<br>";  }}

controllers/AnimalController.php 調(diào)用第三方類庫

<?php/** * Created by PhpStorm. * Date: 2016/5/25 * Time: 15:27 *///YII事件綁定namespace frontend/controllers;use yii;use yii/web/Controller;use vendor/animal/Cat;use vendor/animal/Mouse;use vendor/animal/Dog;use /yii/base/Event;//類級別的事件綁定必須use frontend/behaviors/Behavior1;//對象的混合class AnimalController extends Controller{  public function actionIndex(){    $cat = new Cat();    $mouse = new Mouse();    $dog = new Dog();    //對象級別的事件綁定    $cat->on('miao',[$mouse,'run']);    $cat->on('miao',[$dog,'look']);////    $cat->off('miao',[$dog,'look']);//取消關(guān)注    //類級別的事件綁定//    Event::on(Cat::className(),'miao',[$mouse,'run']);//所有的老鼠都會監(jiān)聽這個miao事件//    Event::on(Cat::className(),'miao',function(){//      echo "miao event has triggerd!<br>";//    });    $cat->shout();    ///Yii::$app是YII實現(xiàn)的單例模式//    Yii::$app->on(/yii/base/Application::EVENT_AFTER_REQUEST,function(){//      echo "event after request";//    });  }  public function actionBehavior()//類的混合  {    /*板塊1     * $dog = new Dog();    $dog->look();    $dog->eat();*/    $dog=new Dog();    $dog->trigger("wang");  }  public function actionObject()//對象的混合  {    $dog = new Dog();    $behavior1 = new Behavior1();    $dog->attachBehavior('beh1',$behavior1);//取個別名,防止沖突    //$dog->detachBehavior('beh1');//移除對象    $dog->eat();  }}

 

希望本文所述對大家基于Yii框架的PHP程序設(shè)計有所幫助。


注:相關(guān)教程知識閱讀請移步到PHP教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 清丰县| 临澧县| 定襄县| 搜索| 高台县| 连城县| 许昌市| 和平县| 隆化县| 西畴县| 东阿县| 高州市| 浮山县| 奎屯市| 前郭尔| 类乌齐县| 盘锦市| 雅江县| 麦盖提县| 勃利县| 大洼县| 招远市| 江达县| 临颍县| 博兴县| 资兴市| 兴海县| 湾仔区| 大安市| 旌德县| 江山市| 长泰县| 通州区| 安乡县| 尚义县| 兴宁市| 汝城县| 奉节县| 宁国市| 新平| 左权县|