|
概念 啥是路由地址:路由地址就是,用户用路由规则访问页面时,真实跳转的地址:【就是Route::rule第二个参数】
种类:
1.路由/模块/控制器 【语法:route::rule('路由规则','模块/控制器/操作') 】
重点
1.1 可以访问控制器 : ' url_controller_layer ' => 'controller',
1.2 按从左到右的顺序进行解析: 操作-> 控制器 ->模块 ;
1.3 支持额外参数查询(查询法师):?变量名=值&变量名2=值2……
虽然是最常用的 也要贴个代码意思意思 就贴个 参数查询的- //第一种 把 sex当做额外参数传递 【本质就是 多变量的部分变量放在 后一个字符串中】
- think\Route::get('lmf/:name','articles/test/lmthree?sex=langlang');
复制代码
2.直接路由到操作方法 【语法: Route::rule( ' 路由规则','@模块/控制器/方法' ) 】
重点
2.1 跳过模块初始化,直接执行 控制器中的方法
2.2 啥是模块初始化:配置文件和公共文件
2.3 调用视图时 必须设置完整模板文件的路径
老莫理解// 第二种,比第一种就多了一个@ 符 ,不过跳过了初始化 【演示的时候是这么干的,先搞个配置项,$name='laomo' , 然后在 类的方法中调用了这个配置, 这就是初始化; 如果不初始化,就不会加载配置项,也就是加上这个 @符】- think\Route::get('lmf2/:name','@articles/test/lmthree?sex=langlang');
复制代码
3.直接路由到:类的方法 【语法: Route::rule('路由规则', ' \完整命名空间\类名@动态操作 '); Route::rule( ' 路由规则' ,' \完整命名空间\类名::静态操作 ' ) 】
重点
3.1 类必须创建在应用目录或子目录中
3.2 静态方法支持外部动态访问,但建议在语法上分开
3.3 为了项目规范,除非不得已 否则尽量少用- think\Route::get('lmf3','\app\Test@lmOne');
复制代码
4.直接路由到:闭包函数 【语法: Route::rule( '路由规则', function(参数){ 闭包函数代码 } ) 】 可以用来网站
重点
4.1 闭包就是函数中的函数,方法中的方法【啥破壁解释 要不是我懂 我就骂人了 我跟你说】
4.2 闭包函数可以接受通过路由规则传过来的参数
4.3 不再执行任何操作,相当于把方法直接定义在参数中
- think\Route::get('lmf4',function (){
- return 'laomo zhen shuai });
- think\Route::get('lmf42/:name',function ($name){
- return 'laomo zhen shuai '.$name;
- });
复制代码
5.直接路由到:重定向地址 【语法: Route::rule( '路由规则',' 重定向地址 ' ) 】
重点 老莫觉得把 这就是nodeJs的渲染指定页 ,不过URL地址也会发生变化】
5.1 重新定向:‘/’或者'http://'开头的外部地址; 【直接说 相对地址 和绝对地址 不就完了嘛 BB半天絮叨啥呢】
5.2 '/' :是以当前可访问的web目录开始:如'public '
5.3 外部地址是301跳转,适用于网站迁移- // 站内跳转
- think\Route::rule('lmdemo','/demo.php'); // 这个文件用于测试 在根目录下
- // 站外跳转
- think\Route::rule('lmdemo2','http://www.damichong.top/da/'); //直接跳 老快了
复制代码
|
|