修复具有多个 php 版本的 PECL/PEAR 的致命错误

Fixing a fatal error with PECL/PEAR with multiple php versions

提问人:artryoki 提问时间:7/18/2023 更新时间:7/18/2023 访问量:133

问:

我需要在服务器上使用 PECL 安装一个 PHP 包。但是,我在执行任何或命令时不断收到以下错误。peclpear

PHP Fatal error:  Array and string offset access syntax with curly braces is no longer supported in /usr/share/php/PEAR/Config.php on line 2095

服务器在 Ubuntu 18.04 上运行。安装了多个 PHP 版本 PHP 7.3、PHP 7.4 和 PHP 8.O。默认控制台 PHP 版本为 8.0。PEAR 版本 1:1.10.8。

首先,我试图通过以下方式确认 PECL 中使用了正确的 PHP 版本: 并尝试查看 PECL 配置: 。这些给出了相同的错误,因为它使用 Config.php 文件。pecl config-set php_suffix=8.0pecl show-config

因此,我发现 PHP 8.0 与安装的 PEAR 版本不兼容。因此,我尝试将 PEAR 版本更新到 1.10.12,因为此版本有一个待处理的更新。

但是,我运行了 dpkg 错误。所以,我执行了:这修复了错误。但是,然后我收到了 linux 包损坏包错误错误,所以我执行了:。sudo apt-get install php-pearsudo dpkg --configure -aapt --fix-broken install

但是现在,PEAR 1.10.12 的更新版本不再可以使用 apt 进行安装。我试过:

apt-get update
apt-get upgrade
apt-get install php-pear

但是现在我得到php-pear已安装到最新版本:1.10.8。

php ubuntu-18.04 pecl

评论

0赞 IMSoP 7/18/2023
Ubuntu 18.04 已达到生命周期的终点(在付费支持计划之外),如果您依赖 Ondřej Surý 的 PPA 来获得版本支持,则该版本的 Ubuntu 的软件包将不再可用。这可能就是您再也看不到任何较新版本的 PEAR 的原因。

答: 暂无答案