💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
基础路由,就是基本的路由种类 GET路由 Route::get('/',function(){ //其中的/表示访问网站主页 return '后盾网 欢迎您'; }); //将其添加到 system/route.php 文件中 //当然,可以设置多条路由,比如再增加一条 Route::get('show', function(){ return 'Hello HDPHP'; }); 1、路由目录的设置,类似于触发点。即当访问此路径时就按此路由进行处理。 2、按路由的路径地址进行匹配处理。 3、GET路由,就是根据地址栏信息进行处理的一种方式, 3.1 路由地址为:/ 此时访问location/index.php的都会被此路由处理 3.2 路由地址为:/a 此时访问location/index.php/a 的都会被此路由处理 3.3 路由地址为:/a/c 此时访问location/index.php/a/c 的都会被此路由处理 即,路由根据地址栏中的信息来匹配使用具体的路由; 如果地址栏是这样的location?index.php/a/c 这样就不会匹配GET路由 小结: 1、地址栏中,主文件后的路径不能使用?而必须使用/ 2、设置多个GET路由,每个路由的路径各不相同,以路径来匹配处理各类情况 1、路径是最长匹配,即当检测到地址栏中的'/show'就会匹配此,而不会匹配'/'。 * 2、关于参数 * 2.1 首先在路由中必须使用{var}来表明接收参数; * 2.2 其次,可以使用{var?}来对是否有参数进行判断;可以传多个! * 2.3 参数会被传送到路由内部匿名方法的参数列表中。 * 2.4 参数传递: * /var1/var2 * /var1_var2.html * 3、关于视图 * 3.1 在路由中同样可以使用return View()来返回视图。 * 3.2 View()方法中的参数也一样,路径、缓存时间 * 3.3 View()的查找路径同样从根目录查找,但最终的查找路径:/view * 3.4 这个路径是/system/config/view.php配置文件中第一行所决定的。 * 4、依赖注入 * 4.1 在路由中,灵活地将各类参数传递进来的方法。 * 4.2 首先,地址栏中传入参数/show/{var1?}/{var2?}。 * route::get('/show/var1/var2',function($var1,$var2){}); * 4.3 其次,按地址传递参数.直接在匿名函数中使用类的路径传入对象实例 * route::get('/show,function(\app\demo $d);$d就是demo类的实例 * 5、路由控制器 * 5.1 route::get('/show','csmodel/index/index')这样会路由到index方法 * 5.2 route::get('/show/{var1}_{var2}.html','csmodel/index/index') * 这样能传递两两参数到index方法中,方法参数列表中用同名变量接收 * 6、路由隐式控制器 * 6.1 route::controller('自定义此路由名','application/controller') * 例:route::controller('user','csmodel/index'); * 6.1.1 当访问/user时,再在其后加上要访问当前控制器下的方法名/user/add * 6.1.2 此方法名只是控制器中的方法的后缀,前缀可能是get/post即访问方式 * 6.2 隐匿路由控制器的参数传递:以常规方式,get:?var1='x'&var2='y'.post方式 * 6.3 参数的接收:在方法中用get['var1']这种方式来接收 * 7、参数检测 * 7.1 在route::get('/',function(){})后使用->where(正则表达式);对传入的参数检测 * 7.2 可以使用链式操作,对多个传入参数进行检测->whwre(1)->where(2) * 7.3 可以使用数组形式对多个参数进行检测->where([1,2]); * 7.4 例 * route::get('/{var1}_{var2}.html',function($var1,$var2){})-> * 7.4.1 where('var1','[0-9]+')->where('var2','[a-z]+'); * 7.4.2 where(['var1'=>'[0-9]+','var2'=>'[a-z]+']); * 7.4.3 第一参数只能是数字;第二个参数只能是小写字母 * 7.4.4 '[0-9]+'正则表达式。 * 8、分组路由:具有相同路由器名的不同的方法就可以使用分组 * Route::group('prefix'='routeName',function(){ * Route::get('add',function(){}); * Route::get('save',function(){}); * }) * 访问时使用: /routeName/add 这样的形式来访问 * 9、分组路由中的控制器 * 将控制器路由放到分组路由之中,通过 * 分组名/控制器路由名/方法名后缀 这样的方法来访问 * 10、可以创建独立的路由文件,然后引入route.php文件之中。 * 11、资源路由,视频67-70课,由于不能创建资源控制器所以,没有实例