Я пытаюсь установить PHP PHP SDK с помощью Composer. Это то, что я получаю
$ 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.
Проблема в том, что у меня включено расширение curl (раскомментировано в php.ini). Когда я запускаю phpinfo()
, он говорит, что он включен. Только ключ, который у меня есть, заключается в том, что когда я запускаю $ php -m
, строка «curl» отсутствует, но я не знаю, что с этим делать.
У меня есть wamp 2.4 на Win8, и я запускаю композитор в cmd.exe.
Это вызвано тем, что у вас нет библиотеки 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
Это сработало для меня: http://ubuntuforums.org/showthread.php?t=1519176
После установки композитора с помощью команды curl -sS https://getcomposer.org/installer | php
curl -sS https://getcomposer.org/installer | php
просто запустите sudo apt-get update
затем переустановите завиток с помощью sudo apt-get install php5-curl
. Затем процесс установки композитора должен работать, чтобы вы могли, наконец, запустить php composer.phar install
чтобы получить зависимости, перечисленные в вашем файле composer.json.
Как сказал Данак в комментариях, есть 2 файла php.ini. Я раскоментировал строку с расширением curl в той папке Apache, которая является php.ini, используемой веб-сервером.
С другой стороны, Composer использует php для консоли, которая представляет собой совершенно другую историю. Файл Php.ini для этой программы не тот, который находится в папке Apache, но находится в папке PHP, и мне тоже пришлось раскомментировать его. Затем я снова запустил установку, и все было в порядке.
для запуска php7:
> sudo apt-get install php-curl > sudo apt-get install php-mbstring
для каждого отсутствующего расширения. Затем:
> sudo apt-get update
и, наконец, (в корневой папке проекта):
> composer install
Я столкнулся с тем же вопросом, который пытался установить Dropbox SDK.
CURL действительно был включен в моей системе, но это означало php.ini в папке wamp \ bin \ apache.
Мне просто пришлось вручную отредактировать php.ini, расположенный в wamp \ bin \ php, раскомментировать extension=php_curl.dll
, перезапустить Wamp и работать отлично.
Почему есть те 2 php.ini, и только один используется, все еще остается загадкой для меня …
Надеюсь, это поможет кому-то!
У меня была эта проблема после перехода на PHP5.6. Мой ответ очень похож на Адриано, за исключением того, что мне нужно было бежать:
sudo apt-get install php5.6-curl
Обратите внимание на «5.6». Установка php5-curl не помогла мне.
Согласно https://github.com/composer/composer/issues/2119, вы можете расширить свой локальный composer.json
чтобы заявить, что он предоставляет расширение (которого он действительно не делает), поэтому вы не должны публично публиковать свои пакет, используйте его только внутри).
Я столкнулся с подобной проблемой, пытаясь заставить композитора установить некоторые зависимости. Оказывается, в .dll появилась моя версия Wamp с конфликтом, я предполагаю, с 64-битной Windows.
Этот URL-адрес имеет фиксированные сглаженные dll: http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/
Прокрутите вниз до раздела, в котором говорится: Исправлены расширения Curl.
Я загрузил «php_curl-5.4.3-VC9-x64.zip». Я просто перезаписал dll в каталоге wamp / bin / php / php5.4.3 / ext с dll, которая была в zip-файле, и композитор снова работал.
Я запускаю 64-битную Windows 8.
Надеюсь это поможет.
Включить в php 7 попробуйте ниже команду
sudo apt-get install php7.0-curl
если использование wamp перейдите к:
wamp\bin\php\php.5.xx\php.ini
find ;extension=php_curl.dll
удалить (;)