TP5源码:框架执行流程与路由解读(二)

2019-11-05  本文已影响0人  机智的老刘明同志

        书接上文,路由中的get方法指向think\Route.php中的addRule方法

        老样子,think\Route类的构造函数设置一些公共变量(其中App $app 就是通过反射机制拿到并注入)

        随后我们跳转到RuleGroup页面下的addRule方法。这里参数内容如下图所示:

        我们以路由 Route::get('hello/:name', 'index/hello'); 为例:

        其中new RuleItem 会创建路由规则实例

1.创建路由规则实例 RuleItem:

    1.路由规则预处理setRule

        setRule主要会进行以下几种操作

            判断是否是完整匹配路由(路由尾部的$符号)

            rule参数左斜线截取

            成员属性rule定义(最后从hello:name转换成了hello/<name>)

            生成路由标识的快捷访问setRuleName();

上一篇下一篇

猜你喜欢

热点阅读