为了账号安全,请及时绑定邮箱和手机立即绑定

Yii框架不得不说的故事—扩展篇(4)

withy PHP开发工程师
难度中级
时长 1小时52分
学习人数
综合评分9.87
49人评价 查看评价
10.0 内容实用
9.8 简洁易懂
9.8 逻辑清晰
  • 引入接口继续消除耦合: <?php namespace app\controllers; use Yii; use yii\web\Controller; use yii\di\Container; class YlzrController extends Controller{ public function actionIndex(){ $container = new Container; $container->set('app\controllers\Driver', 'app\controllers\ManDriver'); $car = $container -> get('app\controllers\Car'); $car->run(); } } interface Driver{ public function drive(); } class ManDriver implements Driver{ public function drive(){ echo 'i am an old man!'; } } class Car{ private $driver = null; public function __construct(Driver $driver){ $this->driver = $driver; } public function run(){ $this->driver->drive(); } }
    查看全部
  • PHP中接口的使用 interface Driver{ public function drive(); } class ManDriver implements Driver{ public function drive(){ echo 'i am an old man!'; } }
    查看全部
  • 不完美版(未用到接口): <?php namespace app\controllers; use Yii; use yii\web\Controller; use yii\di\Container; class YlzrController extends Controller{ public function actionIndex(){ $container = new Container; $car = $container -> get('app\controllers\Car'); $car->run(); } } class ManDriver{ public function drive(){ echo 'i am an old man!'; } } class Car{ private $driver = null; public function __construct(ManDriver $driver){ $this->driver = $driver; } public function run(){ $this->driver->drive(); } }
    查看全部
  • mixin 类的混合 对象的混合
    查看全部
    0 采集 收起 来源:关于mixin

    2017-03-23

  • mixin技术有类的混合和对象的混合,类的混合使用多重继承。
    查看全部
    0 采集 收起 来源:关于mixin

    2017-01-04

  • 事件机制有扫描式和绑定式,Yii采用绑定式,对象有两件事做:1,主动触发事件trigger();2,绑定监听事件on(),事件抛出时,触发绑定动作。
    查看全部
    0 采集 收起 来源:事件机制

    2017-01-03

  • 架构图
    查看全部
  • 直接通过url访问模块中的方法
    查看全部
    0 采集 收起 来源:YII模块化实现

    2016-11-18

  • 调用article模块中的DefaultController控制器中的actionIndex方法
    查看全部
    0 采集 收起 来源:YII模块化实现

    2016-11-18

  • 通过构造函数引入一个类,然后在该类下就可以随意使用了
    查看全部
  • 如图所示的不要再和类一起耦合,而是通过传递参数的形式
    查看全部
    0 采集 收起 来源:YII依赖注入

    2016-10-14

  • 依赖注入是为了解决类与类之间的耦合关系的,程序=算法+数据结构,如图所示的moviesDirectedBy可以当作一个算法,而函数内的MovieFinder则可以当作一种数据结构,把算法和数据结构整合在一起的话会制约算法的通用性,所以要解耦
    查看全部
    0 采集 收起 来源:YII依赖注入

    2016-10-14

  • mixin......有点不懂
    查看全部
    0 采集 收起 来源:关于mixin

    2016-10-14

  • 也可以传递匿名函数
    查看全部
  • 绑定了多只猫的事件,这样子的话就可以实现,只要是猫有反应,老鼠也都会反应,如果只是像 $cat->on('miao', [$mouse,'run'])这样子写的话,只作用于$cat的方法了,不会作用于$cat2的方法
    查看全部

举报

0/150
提交
取消
课程须知
学习本门课程之前,建议先了解以下知识,会更有助于理解和掌握本门课程 1、面向对象的编程思想 2、YII的MVC开发方式 3、常用的设计模式
老师告诉你能学到什么?
1、如何使用模块化将YII项目进行划分 2、能够将程序逻辑解耦的事件机制如何使用 3、如何使用行为去扩展类以及对象 4、如何使用依赖注入去对代码进行解耦

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!