我试图安装Facebook PHP SDK与作曲家。这就是我得到的结果

$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

    Problem 1
        - Installation request for facebook/php-sdk dev-master -> satisfiable by facebook/php-sdk[dev-master].
        - facebook/php-sdk dev-master requires ext-curl * -> the requested PHP extension curl is missing from your system.

问题是,我有卷曲扩展启用(未注释在php.ini)。当我运行phpinfo()时,它说它已启用。 我唯一的线索是,当我运行$ php -m, '卷曲'行是缺失的,但我不知道该怎么做。

我在Win8上有wamp 2.4,我在cmd.exe中运行作曲家。


当前回答

如果你是ubuntu,这将为你工作。

composer update --ignore-platform-reqs

其他回答

这个对我很有用:http://ubuntuforums.org/showthread.php?t=1519176

使用curl -sS https://getcomposer.org/installer | php命令安装composer后,只需运行sudo apt-get update,然后使用sudo apt-get install php5-curl重新安装curl。然后,composer的安装过程应该可以工作,这样您就可以最终运行php composer了。Phar install以获得在您的编写器中列出的依赖项。json文件。

如果使用wamp去:

wamp \ bin \ php \ php.5.x.x \ php . ini 发现: ;扩展= php_curl.dll 删除(,)

这是因为您的系统中没有安装php5-curl库,

在Ubuntu上,只需简单地运行下面的代码行,如果你在Xamp上,请查看Xamp文档

sudo apt-get install php5-curl

对于任何使用php7.0的人

sudo apt-get install php7.0-curl

对于使用php7.1的用户

sudo apt-get install php7.1-curl

对于使用php7.2的用户

sudo apt-get install php7.2-curl

对于使用php7.3的用户

sudo apt-get install php7.3-curl

对于使用php7.4的用户

sudo apt-get install php7.4-curl

对于使用php8.0的用户

sudo apt-get install php8.0-curl

或者简单地运行下面的命令来安装你的版本:

sudo apt-get install php-curl

不知道为什么一个Linux命令的答案会得到这么多与Windows相关的问题的投票,但无论如何…

如果phpinfo()显示Curl已启用,而php -m没有,这意味着你可能也有一个php-cli.ini。运行PHP -i并查看加载了哪个ini文件。如果是不同的,区分它并在CLI ini文件中反映和差异。那你应该可以出发了。

顺便说一下,下载并使用Git Bash代替cmd.exe!

我有Archlinux和php 7.2,它集成了Curl,所以再多的配置巫术也不会让Composer看到ext-curl, php可以看到并愉快地使用它。解决方法是使用——ignore-platform-reqs。

例如编写器更新——忽略平台要求

参考= https://github.com/composer/composer/issues/1426