最新laravel版本,laravel7多版本开发

前言

在实际开发中,我们都知道一个问题,那就是本版更新问题,那么在laravel中如何设置版本呢?请看下面!

根据官网去安装好laravel,我的是laravel7.14.1。然后在app/Providers/RouteServiceProvider服务中加入以下代码,记得在map方法中调用

    /**
     * 路由加载 多版本
     */
    protected function mapApiRoutes(){
        // 获取路由文件夹下的所有目录和文件
        foreach (scandir(base_path('routes')) as $dir){

            //匹配所有以v开头的目录作为版本号
            if(Str::startsWith($dir,'v')){

                Route::prefix('api')
                    ->middleware('api')
                    //设置命名空间
                    ->namespace($this->namespace)
                    ->group(base_path('routes/'.$dir.'/api.php'));
            }
        }
    }

路由目录结构如下,目前在v1文件下,只能是api.php,或许大家可以优化。
在这里插入图片描述
路由api.php代码如下

<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/

//Route::middleware('auth:api')->get('/user', function (Request $request) {
//    return $request->user();
//});

Route::prefix('auth')->group(function($router) {
    $router->post('login', 'AuthController@login');
    $router->post('logout', 'AuthController@logout');
    $router->post('test', 'AuthController@test');
});


Route::group(['namespace'=>'Api'],function () {//做版本控制
    Route::group(['prefix'=>'v1','namespace'=>'V1'],function () {//第一版本

        Route::middleware('refreshtoken')->group(function($router) {
            //访问地址 api/v1/profile
            $router->get('/profile','UserController@profile')->name('api.v1.profile');
        });
    });
});

我的控制器目录如下:
在这里插入图片描述
如果大家觉得我的控制器目录不够美观,可以将Controller.php和Authcontroller.php进行转移到V1目录下面,不过需要注意的是命名空间记得修改一下。
现在大家可以愉快的进行多版本开发了!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值