首页 > 作文

YII框架实现自定义第三方扩展操作示例

更新时间:2023-04-07 10:28:24 阅读: 评论:0

本文实例讲述了yii框架实现自定义第三方扩展操作。分享给大家供大家参考,具体如下:

cat.php

<?php/** * created by phpstorm. * date: 2016/5/25 * time: 15:23 */namespace vendor\animal;u \yii\ba\component;//组件u \yii\ba\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;u frontend\behaviors\behavior1;u yii\ba\component;//让一个类拥有接收行为的能力class dog extends component{  public function behaviors(){    return [      behavior1::classname(),    ];  }  public function look()  {    echo "i am looking!<br>";  }}

mou.php

<?php/** * created by phpstorm. * date: 2016/5/25 * time: 15:23 */namespace我心目中的英雄作文 vendor\animal;class mou{  public function run($e)  {    echo $e->message;    echo "i am running!<br>";  }}

controllers/animalcontroller.php 调用第三方类库

<?php/** * created by phpstorm. * date: 2016/5/25 * time: 15:27 *///yii事件绑定namespace frontend\controllers;u yii;u yii\web\controller;u vendor\animal\cat;u vendor\animal\mou;u vendor\animal\dog;u \yii\ba\event;//类级别的事件绑定不战而屈人之兵必须u frontend\behaviors\behavior1;//对象的混合class animalcontroller extends controller{  public function actionindex(){    $cat = new cat();    $mou = new mou();    $dog = new dog();    //对象级别的事件绑定    $cat->on('miao',[$mou,'run']);    $cat->on('miao',[$dog,'look']);////    $cat->off('miao',[$dog,'look']);//取消关注    //类级别的事件绑定//    event::on(cat::classname(),'miao',[$mou,'run']);//所有的老鼠都会监听这个miao事件//  论文的标准格式  event::on(cat::classname(),'miao',function(){//      echo "miao event has triggerd!<br>";//    });    $cat->shout();    //\yii::$app是yii实现的单例模式//    yii::$app->on(\yii\ba\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相关内容感兴趣的读者可查看本站专题:《yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于yii框架的php程序设计有所帮助。

本文发布于:2023-04-07 10:28:23,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/7edb9d30fcf2e2504e62ca5765ae666a.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:YII框架实现自定义第三方扩展操作示例.doc

本文 PDF 下载地址:YII框架实现自定义第三方扩展操作示例.pdf

标签:事件   绑定   框架   对象
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图