gpt4 book ai didi

php - 通过 Nix flake 安装时,Composer 读取的 PHP 版本不正确

转载 作者:行者123 更新时间:2023-12-03 07:56:43 26 4
gpt4 key购买 nike

我正在创建一个 WordPress 插件,但需要连接到 Xero 的 API。 Xero 建议使用 Composer 插件 xero-php-oauth2 所以我设置我的 WP 插件来使用 Composer,这很有效。我已经成功安装并使用 phpdotenv 作为测试。

不幸的是,我收到以下错误:

Fatal error: Composer detected issues in your platform: Your Composer  dependencies require a PHP version "\>= 8.1.0". You are running  8.0.28. in  /var/www/html/wp-content/plugins/tws-eta-api-visualisations/vendor/composer/platform_check.php  on line 24

当我运行 8.1.17 时,Composer 似乎认为我的 PHP 版本是 8.0.28,但我不明白为什么。

我正在使用 Nix flake 配置 PHP 和 Composer:

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
};

outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
in {
devShell = with pkgs; pkgs.mkShell {
buildInputs = [
php81
php81.packages.composer
nodejs-16_x
(yarn.override { nodejs = nodejs-16_x; })
];

shellHook = ''
if [ ! -d "vendor" ]; then
${php81}/bin/php ${php81.packages.composer}/libexec/composer/composer.phar update
composer install
fi

if [ ! -d "node_modules" ]; then
yarn install --immutable
fi

yarn build

open http://localhost:8000
'';
};
}
);
}

有人知道我能做些什么来解决我的问题吗?

我尝试遵循各种在线指南,通过配置更新、安装命令和 composer.phar 设置 Composer 的 PHP 版本。

最佳答案

这可能与所有人无关,但这就是发生在我身上的事情。

我在 Docker 中运行我的 WordPress 实例,Docker 将其 PHP 版本设置为 8.0.28...

因此,虽然我的 Nix flake 正确设置了 PHP 版本,但在将文件传输到 Docker 后,它使用的是 Dockers PHP 版本。

将 docker-compose WordPress 镜像更新为 image: wordpress:6.0-php8.1-apache 为我解决了这个问题。

关于php - 通过 Nix flake 安装时,Composer 读取的 PHP 版本不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75881990/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com