php中Laravel定义路由

美女程序员鼓励师

路由能够对访问进行优化,所以在各个框架中都会有所涉及。在Laravel框架中也可以使用路由来进行操作,不过我们要先对路由进行定义。这里整理了两种方法:get方式、info方法。接下来我们就定义路由的方法进行详细的代码讲解,在完成对路由设置的同时,还可以尝试相关的使用。

1.get方式

Route::get('/', function () {

    return view('welcome');

});

好处是把回调的实现和使用场所隔离,这段代码是意思是,当get方式访问根目录时返回welcome视图

2.info方法

Route::get('admin/info','Admin\IndexController@info');

访问http://your-app.dev/admin/info时,调用命名空间Admin下的IndexController控制器里的info方法。这样写是不是麻烦,所以有了路由组,统一指定中间件,前缀和命名空间。

3.使用路由

//在浏览器直接访问,跳转到welcome视图,视图路径在public/resources/views/

Route::get('/', function () {

    return view('welcome');

});

 

//在浏览器直接访问,返回hello world

Route::get("route1", function () {

    return "hello world";

});

 

//因为是post请求,不可以在浏览器地址栏直接访问

Route::post("route2", function () {

    return "hello world";

});

 

//match: 可以定义接收get或post请求

Route::match(['get','post'], "reute3", function () {

    return "hello world";

});

 

//any: 可以接收get和post请求

Route::any("route4", function () {

    return "hello world";

});

 

//路由接收参数,php中的字符串拼接用 "."

Route::get("user1/{id}", function($id){

    return "id-->" . $id;

});

 

//在user2/{id?} 后面加个问号代表参数不是必要的,可以在function中给个默认值

Route::get("user2/{id?}", function($id = 5){

    return "id-->" . $id;

});

 

//参数校验,在最后面加上正折表达,这里代表username只能是字母

Route::get("user3/{username}", function($username) {

    return "username-->" . $username;

})->where("username","[A-Za-z]+");

 

//路由别名,只要在后面加个数组,注意数组第一个元素是"as" => "center" ,第二个元素是function

Route::get("user4/mamber-center", ["as" => "center" , function(){

    //使用routes可以返回对应的路径

    return route("center");

}]);

 

//路由群组,加前缀,member.可以通过member/user1访问到第一个,

//通过member/user2访问到第二个

Route::group(["prefix" => "member"], function(){

 

    Route::get("user1",function(){

        return "hello world";

    });

 

    Route::get("user2",["as" => "group_route", function(){

        return route("group_route");

    }]);

 

});

以上就是php中Laravel定义路由的两种方法,步骤不是很繁琐,大家可以分别尝试一下。学会后也可以对路由在Laravel框架中进行使用,加深实际的操作能力。更多php学习指路:php教程

以上是 php中Laravel定义路由 的全部内容, 来源链接: utcz.com/z/542930.html

回到顶部