php - PHP Imagick 类在从 Web 服务器调用而不是从命令行调用时工作
问题描述
在 PHP 中使用 Imagick 时遇到了一个非常令人沮丧的问题。
简单代码:
$image = '1551660111_7801.jpg';
$imageBG = new Imagick();
$imageBG->readImage($image);
$imageBG->resizeImage('1280', '720', 1, 1, true);
$imageBG->writeImage ('test.jpg');
当我通过 Chrome 运行它时,没有问题,生成新文件。
但是当我像这样通过终端时
php test.php
我收到这个错误
Fatal error: Class 'Imagick' not found in ../test.php on line 8
解决方案
在 CLI 和 Web 服务器上检查您的 PHP 版本。
在cli上:
php -v
在网络服务器上打开 phpinfo(); 某些 *.php 文件中的命令。可能您已将 ImageMagick 安装为 PHP 5.6 扩展并由 Web 服务器使用,但您的 CLI php 版本是 PHP7
推荐阅读
- oracle - Oracle Apex 表中的最大记录
- flutter - Flutter:在 Android 设备上 Flutter 中不使用 websocket
- php - 使用 php api 登录多个 Instagram 帐户
- java - Android 相机 API2 不支持的文件格式
- javascript - 如何将base64解码为vue.js中输入类型文件中的文件格式?
- azure - 无法在本地运行 azure 函数调试 - 无法加载类型 Microsoft.Azure.WebJobs.Host.Scale.IScaleMonitorProvider
- android - 数据未在 MVVM 模型中的数据绑定示例中更新 - 将数据更新到模型和从模型更新
- parsing - 如何使用 megaparsec 报告多个错误?
- sqlite - 如何使用 lua 固件在 ESP8266 上运行 sqlite3?
- python - 使用 MDM 从 iOS 设备安装或删除应用程序时,我可以收到通知或任何观察者吗?