vanader139 / laravel-vintage
在 Laravel 项目内运行旧版代码
dev-main
2021-03-08 14:47 UTC
Requires
- laravel/framework: ^5.8
This package is auto-updated.
Last update: 2024-09-08 22:24:59 UTC
README
在 Laravel 项目内运行旧版代码
为什么?
为了帮助和推荐旧版项目升级到现代平台,允许逐步迁移路由,同时在过渡期间使这个过程变得有趣。
安装
1 - 创建一个新的 Laravel 项目
composer create-project --prefer-dist laravel/laravel {projectName} "5.8.*"
2 - 通过 Composer 需求
composer create-project vanderson139/laravel-vintage
3 - 获取配置文件
php artisan vendor:publish
4 - 将你的旧版项目放入 ./vintage
文件夹中。
它是如何工作的?
当 Laravel 收到请求时,它首先会尝试为它找到一条路由。如果没有找到,它将尝试从 vintage
文件夹中加载一个文件。
在将任何从旧版 PHP 文件迁移到 Laravel 控制器的路由之后,将其路径放置在配置文件中的 migrated_routes
中。
个性化
你的项目可能不能直接运行,在这种情况下,可以添加新的中间件来进行所需的调整。只需确保将它们放入配置文件中即可。
<?php return [ 'folder_name' => 'vintage', 'middlewares' => [ \Vintage\Middleware\MigratedRoutes::class, \Vintage\Middleware\SessionGlobal::class, \Project\MyCustomMiddleware\AjustCustomBehavior::class, ], 'migrated_routes' => [ 'my_legacy_file.php' => '/laravel-route' ] ];
已知问题
全局变量调用将不会工作,请将它们替换为 global $GLOBALS。
替换为这个
global $MY_GLOBAL_VARIABLE;
使用这个
$GLOBALS['MY_GLOBAL_VARIABLE'];