vanader139/laravel-vintage

在 Laravel 项目内运行旧版代码

dev-main 2021-03-08 14:47 UTC

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'];