如何使用rector自动升级我的php代码

问题描述 投票:0回答:1

我有一个网站,过去我在使用它时遇到了很多关于 php 的麻烦。当我让域名注册商解决我的问题时,我转移到另一个注册商,在转移期间,我使用 Composer 编写了一些安全措施。但是我使用的 php 软件包是用较新版本的 php 编码的,而我的 php 代码是另一个 php 版本(我的旧注册商告诉我的,因为他们必须降级其版本)。我懒得手动升级它(有多个文件,我什至不知道版本之间有什么语法变化,因为在我的电脑中,我安装了 php 8.3.3,并且由于某种原因代码变成了显然是一个较低的版本),所以我一直在尝试使用 ector 来自动升级它。但所有的 YouTube 教程都是旧的,并且校长“语法”已经改变。所以我不知道,对于我的一生,如何让它更新到8.3 php版本语法与rector。实际上,当我设法运行“phpvendor/bin/rector process --dry-run”并在控制台中得到某种良好的响应(意味着没有错误)时,它表明唯一的变化来自“长数组” ” 到“短数组”语法。我这样做了,没有任何改变,由于这个 php 版本问题,我的网站上仍然收到 HTTP REQUEST 500 错误。

我知道问题出在 php 版本上,因为在将 Composer 包添加到根文件夹之前,它工作得很好。当我将网站的 php 版本更改为较低版本时,它出现了 HTTP REQUEST 500 错误,但随后我无法使包正常工作。

declare(strict_types=1);

use Rector\Config\RectorConfig;
use Rector\Set\ValueObject\LevelSetList;

return RectorConfig::configure()
    ->withPaths([
        __DIR__ . '/deploy',
    ])
    ->withPreparedSets(
        deadCode: true,
        codeQuality: true
    )
    ->withPhpSets(php83: true);

请帮助我,我已经连续尝试了三周,我快失去理智了。

php http-error rector
1个回答
0
投票

遵循 ceejayoz 在评论中的建议后,我可以看到错误实际上是我正在提供“require_once”,而不是组合所有作曲家包并呈现它们的文件的整个路径。太感谢了!我很抱歉问了这个愚蠢的问题。

© www.soinside.com 2019 - 2024. All rights reserved.