php - 如何在当前启用的 PHP 版本中安装 imagick?
问题描述
我安装了多个 PHP 版本(7.0、7.1 和 7.3)。我已启用 PHP 7.0(出于各种原因,我需要保留此版本)。当我尝试安装 imagick (通过 sudo apt-get install php-imagick)时,库仅针对 PHP 7.3 进行复制/安装,尽管我使用的是 php -v 和 phpinfo 文件确认的 7.0。
我是否缺少任何 Apache 设置?为什么在安装新的 php 库时不将当前启用 7.0 的模块视为默认 php 版本?
操作系统:Debian 10 WS:Apache/2.4.38
我尝试编辑 php.ini、启用扩展、通常的基本过程……但 imagick.so 仅针对 php 7.3 编译。PHP 7.0 的扩展文件夹中没有它们的踪迹,也无法加载它。
更新#1
检查sudo update-alternatives --config php
我看到了这张表(见图) - 我不知道如何更改优先级或自动模式。看起来 PHP 7.3 保持最高优先级。
更新#2
试过这个,没有结果。
PHP 7.0 设置为默认
sudo update-alternatives --set php /usr/bin/php7.0 sudo update-alternatives --set php-config /usr/bin/php-config7.0 sudo update-alternatives --set phpize / usr/bin/phpize7.0
重新安装 imagick
sudo apt-get install imagemagick php-imagick --reinstall
(没有错误,但它会继续为 PHP 7.3 安装它们)
php -m 不显示任何模块,因为它们位于 php 7.3 的扩展文件夹中
解决方案
Debian 10 使用 PHP 7.3 作为其“标准”PHP 版本,因此其所有 PHP 扩展包(包括php-imagick
)都将包含针对 PHP 7.3 的扩展。
如果您以某种方式安装了 PHP 7.0(您不应该这样做,因为它已于 2019 年 1 月终止并且不再接收安全更新),您将需要通过其他渠道获取它的扩展。
推荐阅读
- string - python中的列表添加
- python-3.x - Python 3.7 非阻塞请求?
- c# - 创建后无法连接到 Microsoft SQL Server 数据库(“系统找不到指定的文件”)
- css - 为什么我的网站在移动视图上没有响应?
- c++ - 是否有更有效的方法来为日期生成 REGEX 字符串
- javascript - 显示本地存储值
- excel - 哪个更适合用于引用 excel 中的单个单元格:A1 还是 A:A / 1:1?
- php - 如果 isset 则连接字符串
- ios - 无效更新:UITableView 中的节数无效
- php - 数组和字符串作为 PHP 中 Soap 的参数