猿问

Composer 需要 ext-zip 失败

PHPStorm 告诉我,我需要 composer require ext-zip,但是,该命令失败了...

PHPStorm 说

我发出的命令是

composer require ext-zip

结果是

Your requirements could not be resolved to an installable set of packages.

Installation failed, reverting ./composer.json to its original content.


catspeake
浏览 979回答 3
3回答

精慕HU

如果您的代码运行正常 - 您已经在您的机器上安装了 zip 扩展。PHPStorm 添加此建议是为了确保项目部署的其他任何地方也有正确的扩展。在您的 composer.json 文件(require块)中手动添加该行"ext-zip": "*",(以及它可以建议的其他内容,例如ext-apc,ext-redis和ext-json,以及您可能正在使用的任何其他内容)将确保在您部署它时 composer 也可以检查安装了适当的额外项目。不过,这只是一个警告,您可以忽略它 - 或者您可以让 composer 确保您的服务器已设置为运行您的代码所需的服务器,并使用 zip 文件执行操作。如果您的服务器没有安装 ext-zip,composer install则会抱怨并停止 - 稍后当您发现没有 zip 扩展名的代码失败时保存问题,等等。

慕哥6287543

给定的提示来自 PhpStorm,而不是 Composer 本身:您的 IDE 已检测到您的代码使用了ZipArchive仅在启用 ZIP 扩展时可用的方法(或在本例中:类)。但是composer.json到目前为止,您还没有包含该要求。因此,PhpStorm 要求您将此要求添加到 JSON 文件中,以使运行代码的要求更加精确。您如何解决该要求取决于您:最好的方法是安装该扩展,但这超出了 composer 的范围

凤凰求蛊

解决方案#1 - 将 ext-zip 添加到您需要的 composer.json 部分:{    "require" : {        "ext-zip": "*"    }}解决方案#2 - 安装 php-zip 扩展:视窗:在 php.ini 中取消注释这一行;扩展名=php_zip.dllLinux:须藤 apt-get 安装 php-zip或者sudo apt-get install php7.0-zip (确保你输入了你的php版本,你可以通过执行 php -v 命令来检查你的版本)然后,您需要重新启动 Web 服务器。须藤服务 apache2 重启
随时随地看视频慕课网APP
我要回答