【发布时间】:2019-06-16 01:02:33
【问题描述】:
我正在我的 laravel 应用程序上安装 guzzle。但在此之前,guzzle 需要 whatsapp/chat-api。当我通过composer require whatsapp/chat-api 安装whatsapp/chat-api 时,它会抛出错误
whatsapp/chat-api v3.2.0.1 需要 ext-mcrypt * -> 您的系统中缺少请求的 PHP 扩展 mcrypt。
但是,我的 php.ini 中有 extension=mcrypt.so 用于我的 php。我的 PHP 版本是 7.2.1
为什么即使在我的 php.ini 中包含 extension=mcrypt.so 后,我仍然会收到上述错误?
【问题讨论】:
-
mcrypt 在 PHP 7.0 中被删除,因为它已被废弃多年并且不再被认为适合用途。任何依赖它的软件也必须被认为不适合目的,直到对 mcrypt 的依赖被修补以支持更现代的加密库。
-
您的系统上是否安装了扩展程序?通过运行
php -i | grep mcrypt进行检查。如果输出为空,则不是。 -
@GordonM,意思是 Guzzle 不能在 PHP 7.0 上运行?
-
等等,Guzzle 什么时候需要
whatsapp/chat-api?这对我来说是个新闻。您可能想说:“我尝试安装 whatsapp/chat-api,它需要 guzzle,而后者又需要 ext-mcrypt”。 -
改述其他评论者表达的担忧:
composer require guzzlehttp/guzzle:6.3触发安装guzzlehttp/promises、ralouphie/getallheaders、psr/http-message、guzzlehttp/psr7和guzzlehttp/guzzle并建议(但不安装本身)psr/log。whatsapp/chat-api包必须来自其他地方。您确定它还没有在composer.json中作为其他团队成员设置的直接依赖项吗?
标签: php