10

我正在使用 PHP 5.6.4 版开发 Laravel 5.4。我的目标是使用 PHP 7.1 将我的项目升级到 Laravel 5.7。

现在我的问题是:我必须升级到 5.5 > 5.6 > 5.7 还是可以直接从 5.4 升级到 5.7?

4

8 回答 8

6

有一些关于文档的文章。您可以直接升级到 5.7,但请务必从此链接5.5->5.65.6->5.7修改关键部分。并先备份当前项目

于 2018-10-17T07:30:52.797 回答
4

最好先升级 5.5,然后再升级 5.6 和 5.7,因为如果您在 5.5 和 5.6 升级指南中看到有一些软件包也需要升级,所以您最好一步一步进行。

对于旧版本,您可以查看

于 2018-10-17T07:39:57.677 回答
2

从我的角度来看,这将有助于逐步升级。这有助于查看您的应用程序是否已经与需要进行的所有更改兼容。

如果您直接升级到 5.7 并由于更改而面临更大的问题,您最快的选择是再次降级到 5.4。

如果你在第一步升级到 5.5,你可以让你的应用程序兼容 5.5,彻底测试它,部署它,然后开始测试升级到 5.6 需要做什么。

于 2018-10-17T08:54:15.933 回答
1

只需将您的laravel/framework依赖项更新到5.7.*您的composer.json文件中:

"require": {
    "php": "^7.1.3",
    "fideloper/proxy": "^4.0",
    "laravel/framework": "5.7.*",
    "laravel/tinker": "^1.0"
},

之后,在命令提示符下运行此命令:composer update

您将取得成功,您的 Larvael 将更改为5.7 版本,升级指南中提供了更多详细信息

于 2018-10-17T07:51:52.210 回答
1

只需在您的 composer.json 文件中将您的 laravel/framework 依赖项更新为 5.7.*。由于您是从 5.4 升级到 5.7,那么您可以轻松地运行

composer update

如果你在 5.4 应用程序中修改了 Laravel 的一些特征或方法,那么你可以在这里查看更多信息

于 2018-10-17T09:11:52.230 回答
0

不,你不应该一步一步升级,只有你可以这样做: https ://laravel.com/docs/5.7/upgrade

于 2018-10-17T07:31:01.323 回答
0

更新 Laravel 6.x(这意味着任何 V6 的子版本)
只需运行此命令

cd [laravel installation directory]
composer update

您必须在 VM 或 PC 上安装 composer。

仅适用于 Linux 用户:

Composer 目录必须由当前用户拥有

//Check ownership
ls -la ~/ | grep ".composer"

//If you don't own the directory
chown -R [user]/[user] ~/.composer

在任何社交媒体上给我发消息@smitpatelx 如果您需要任何帮助或您的用例与上述不同,请发表评论。

于 2019-11-29T02:32:17.127 回答
0

您可以在文件中将您的 laravel/framework 依赖项更新为 5.7.* composer.json

1.composer.json的变化:

从:

"require": {
        "php": ">=7.0.0",
        "fideloper/proxy": "~3.3",
        "laravel/framework": "5.4.*",
        "laravel/tinker": "~1.0"
    },

至:

"require": {
        "php": ">=7.1.3",
        "fideloper/proxy": "~4.0",
        "laravel/framework": "5.6.*",
        "laravel/tinker": "~1.0"
    },

2. 将 app\Http\Middleware\TrustedProxies.php 文件替换为以下内容:

<?php

namespace App\Http\Middleware;

use Illuminate\Http\Request;
use Fideloper\Proxy\TrustProxies as Middleware;

class TrustProxies extends Middleware
{
    /**
     * The trusted proxies for this application.
     *
     * @var array
     */
    protected $proxies;

    /**
     * The headers that should be used to detect proxies.
     *
     * @var string
     */
    protected $headers = Request::HEADER_X_FORWARDED_ALL;
}

3.作曲家更新

composer update
于 2018-10-17T09:50:37.193 回答