我在为laravel安装devisephp时遇到问题。我正在使用php7开发最新版本的宅基地。当我做作曲家更新时,我得到以下错误。
Problem 1
- Installation request for devisephp/cms 1.4.* -> satisfiable by devisephp/cms[1.4.0].
- devisephp/cms 1.4.0 requires ext-imagick * -> the requested PHP extension imagick is missing from your system.
在我的家园环境中安装了这个消息之后,在cli和fpm中添加了php.ini的扩展,并且如果imagick正在使用测试文件,则在宅基地中检查。一切都运行得很好,但在运行作曲家更新时,我仍然从上面得到相同的错误消息。有没有人知道问题是什么。
stange的事情就是kan git clone devisephp它的bootstrap版本完全正常工作,包括图像处理,但是当我向laravel添加另一个包时,我再次收到上述消息。
答案 0 :(得分:2)
请按照以下步骤操作
答案 1 :(得分:0)
如果您确实无法安装或不希望对该扩展程序进行验证,则可以通过提供
跳过它 --ignore-platform-reqs
您的作曲家命令的标志
答案 2 :(得分:0)
尝试添加:
"ext-imagick": "*",
像这样到composer.json中的 require 块:
"license": "MIT",
"require": {
"ext-imagick": "*",
....
}
并运行 composer更新
答案 3 :(得分:0)
使用 composer.js 中的 config.platform
键,您可以伪造依赖项,例如 php 版本或扩展程序(但是,您不能对扩展程序版本使用星号!)
https://getcomposer.org/doc/06-config.md#platform
作为奖励,您可以使用此库对 ext-imagick 进行 polyfill:https://github.com/calcinai/php-imagick。它不完整并且依赖于命令行 ImageMagick。到目前为止,它对我有用。
{
"require": {
"calcinai/php-imagick": "dev-master"
},
"config": {
"platform":{
"ext-imagick": "3.4.4"
}
}
}