灰太狼

灰太狼

这家伙有点懒,还没写个性签名!

  • 财富值3290
  • 威望值150
  • 总积分5550

个人信息

  • 回复了 的回答

    rewrite 起了作用,将所有请求(实际存在的文件直接访问)“转发”到了 index.php 文件。

    .htaccess 或者 nginx 对应的配置文件

    我自己建立和yii使用的是相同的nginx。yii有使用 .htaccess 么,在哪里没看到呢。

  • 回复了 的回答

    这是框架的一个神圣约定,为了简化Widget的调用过程的同时,作为Component的子类,缔造者们确保事件等相关机制和代码风格在Widget生命周期同样有效。

    当然,假如你自己来造一个框架,你可以决定没有这个Run方法,这不影响最终结果。

    或者,更复杂严谨但不神圣的——你可以用interface或者abstract来约束

    interface或者abstract来约束 也是针对基类的,但是yii很好的使用了一个空的run实现解决了约束问题。这种空的实现是yii的一种手段。太多地方使用这样的方式了。

  • 在使用的时候 类命名空间::widget([这里是参数]) 这个没问题知道吧。

    然后 会调用基类的 widget(){
    这个方法里面会有一句$widget->run() ,为什么是#$widget->run(),不是$this->run()呢。
    }

    因为要执行调用者子类的run ,通过获取这个类给$config,然后创建了这个类的对象就可以调用run()了

    总结:也就是基类里封装好里必须调用run();子类必须要有这个方法(也不是子类必须如果子类要实现业务逻辑就要写这个run()),其实基类已经实现了一个空的run();你不写也行啊。那就什么都不做。

  • 00B7E7E7-9484-488B-8773-5CBAC8539008.png

    如图,我把controll放到了 yii\base 里面就可以自动加载并且识别到类

  • 回复了 的回答

    这是框架底层么?

    是啊,想知道自己定一个controller类文件它是怎么加载进去并识别到这个类的,我尝试了,一直识别不到这个类

  • 提出了问题
    Yii2 框架里,controller 类是怎么加载的?
  • 发布了话题
    重复造轮子 Yii2
  • 回复了 的说说
    重复造轮子,重写一边yii2。了解非常深!!!是看文档无法比的!
    看我的一篇话题文章截图
  • 回复了 的说说
    重复造轮子,重写一边yii2。了解非常深!!!是看文档无法比的!
    也算是照着写吧,不过是从第一个index.php+composer开始写,然后一点点深入。最后你发现,架子搭好了,其他的都是组件封装了。
副总裁 等级规则
5550/10000
资料完整度
10/100
用户活跃度
0/100

Ta的关注

8

Ta的粉丝

28

Ta的访客

120