Como instalo a extensão ext-curl com o PHP 7?


190

Instalei o PHP 7 usando este repositório , mas quando tento executar composer install, está dando o seguinte erro:

  • [package] requer ext-curl * -> a extensão de extensão PHP solicitada está ausente no seu sistema.

Com o PHP 5, você pode instalá-lo facilmente executando o comando yumou apt-get install php5-curl, mas não consigo encontrar como instalar o equivalente ao PHP 7.

Como instalo o ext-curl para PHP 7?


3
instale o libcurl primeiro, ie. yum install libcurl or apt-get install libcurl. Depois disso, configure o seu php 7 com curl ./configure --with-curle finalmente faça e instale
Haridarshan

@Haridarshan Yea bem, mas isso é inconveniente
Nino Škopac

Eu criei e instalei o php 7 com curl e outra extensão. Você também pode precisar instalar as bibliotecas devel.
Haridarshan 03/02

Respostas:


445

Bem, eu consegui instalá-lo por:

sudo apt-get install php-curl

no meu sistema. Isso instalará um pacote de dependência, que depende da versão padrão do php.

Depois disso, reinicie o apache

sudo service apache2 restart

36
..e reinicie o serviço. serviço sudo apache2 restart
Sydwell 9/09/16

1
Somente se você estiver usando a versão do servidor web apache. Você não precisa reiniciar o apache para a versão CLI é claro
CommandZ

semelhante GD2, xmlrpc, sabão, etc - todas as letras pequenas sufixo trabalhou
msanjay

5
Em vez de sudo apache2 serviço restaurado, serviço sudo apache2 recarregar
sudip

Na verdade, isso depende dos pacotes disponíveis nas fontes do APT. Primeiro, atualize os pacotes APT usando apt-get update. Em seguida, digite apt-get install phpe pressione tab duas vezes. Ele solicitará uma confirmação para exibir a lista inteira como Display all n possibilities? (y or n):onde N é o número disponível de possibilidades. Pressione Y e você obterá uma longa lista de pacotes disponíveis, dos quais você pode encontrar o nome do pacote que deseja. Obviamente, se você tiver uma lista longa, isso será um pouco entediante. Mas você ainda pode reduzi-lo com base na versão.
Romeo Sierra

98

tente por favor

sudo apt-get install php7.0-curl

9
você não deve especificar o número da versão se não precisar explicitamente. caso contrário, você poderá instalar acidentalmente uma versão mais antiga.
phil294

2
As respostas somente código e "tente isso" são desencorajadas. Estou surpreso que demorou tanto tempo para conseguir um único voto negativo.
RamenChef

2
No meu caso, eu tive que especificar a versão para que funcionasse. Acho que é porque eu tinha mais de uma versão instalada no meu sistema.
padawanTony

1
Se for necessário atualizar o PHP 5.5 / 5.6, é necessário especificar o número da versão.
AlexL

Além disso, sudo apt install curlalguém sabe por que isso acontece?
Dheeraj

25

Se o comando "sudo apt-get install php-curl" não funcionar e exibir erro, devemos executar este código antes de instalar o curl.

  • passo1 - sudo add-apt-repository ppa: ondrej / php
  • step2 - sudo apt-get update
  • passo 3 - sudo apt-get install php-curl
  • step4 - serviço sudo apache2 reiniciar

1
Não sei por que as pessoas votaram negativamente nisso, tente, pode funcionar.
Big Green Alligator

1
Sim, funciona. Na etapa 3, você pode realmente escolher uma versão php específica.
Iliaz

1
às vezes ele precisa especificar a versão do seu php. por exemplo: step3 sudo apt-get install php7.1-curl ps você me salva de uma longa noite!
Vladimir Ch

17

Eu tentei as soluções acima, mas não funcionou para mim, apenas coloque outras pessoas nos mesmos sapatos, foi o que eu fiz. Atualizei o apt-get com o seguinte comando

sudo add-apt-repository ppa:ondrej/php

isso eu instalei com o php curl para a versão do php que eu estava usando, a minha era

sudo apt-get install php7.1-curl

Outras respostas me levaram à mesma conclusão exata. Digamos que esteja correto para o Now, onde outras respostas estavam corretas para seu próprio tempo. Vou verificar se isso funciona no Ubuntu 18.04, Apache 2. Isso é preferível ao simples "php-curl", que tenta carregar uma versão do PHP7.2, onde (para mim) quero continuar usando o 7.1. Não se esqueça de reiniciar o servidor da web. Depois disso, onde phpinfo () costumava mostrar o cURL logo abaixo da seção Module Authors (Sterling Hughes), agora o cURL tem sua própria seção muito detalhada, atualmente na 7.58.0.
TonyG

você é o verdadeiro herói
Berk Kaya

Essa deve ser a resposta aceita. A resposta com mais votos não me ajudou.
Marcelo Agimóvel 26/11/19

11

Podemos instalar as extensões PHP7 necessárias no momento da instalação do Magento, basta usar o comando relacionado que você recebe erro no momento da instalação no Magento

sudo apt-get install php7.0-curl
sudo apt-get install php7.0-dom
sudo apt-get install php7.0-mcrypt
sudo apt-get install php7.0-simplexml
sudo apt-get install php7.0-spl
sudo apt-get install php7.0-xsl
sudo apt-get install php7.0-intl
sudo apt-get install php7.0-mbstring
sudo apt-get install php7.0-ctype
sudo apt-get install php7.0-hash
sudo apt-get install php7.0-openssl
sudo apt-get install php7.0-zip
sudo apt-get install php7.0-xmlwriter
sudo apt-get install php7.0-gd
sudo apt-get install php7.0-iconv

Obrigado! Espero que isso ajude você


Sua resposta não agrega nenhum valor.
Stephan Vierkant

Sua resposta não contém nenhuma informação nova. Por favor, veja as outras respostas.
precisa saber é o seguinte

3
Esta é uma resposta muito boa, pois quem procura curl provavelmente terá a próxima pergunta em mente sobre mcrypt. E assim por diante, por isso é muito útil ter tudo lá.
TheKitMurkit

5

Primeiro, entre no seu servidor e verifique a versão do PHP que está instalada no seu servidor.

E, em seguida, execute os seguintes comandos:

sudo apt-get install php7.2-curl

sudo service apache2 restart

Substitua a versão do PHP (php7.2) pela sua versão do PHP.


2

Se você estiver usando o PHP7.1 (tente php -versionencontrar a sua versão do PHP)

sudo apt-get install php7.1-curl

depois reinicie o apache

sudo service apache2 restart

1
Prefiro esta resposta, pois especifica o número da versão. A resposta aceita não é muito precisa.
Aaron Liu

2

Eu recebi um erro de que a extensão CURL estava ausente durante a instalação do WebMail Lite 8 no WAMP (assim no Windows).

Depois de ler o libeay32.dllnecessário, que estava presente apenas em algumas das pastas de instalação do PHP (como 7.1.26), troquei a versão do PHP em uso de 7.2.14 para 7.1.26 no menu da versão do WAMP PHP, e o erro ocorreu longe.


Eu tive que fazer isso também para fazer o CURL funcionar. (Tentei copiar o libeay32.dll da versão 7.0.10 para a pasta 7.3.8, mas não funcionou.) Não sei por que esse arquivo de biblioteca está ausente na nova instalação do php 7.3.8.
217 Stefan #

1

instale o php70w-common .

Ele fornece php-api, php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif, php-fileinfo, php-filter, php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-json, php-libxml, php-openssl, php-pcre, php-pecl-Fileinfo, php-pecl-phar, php-pecl-zip, reflexão de php, sessão de php, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib .

https://webtatic.com/packages/php70/


6
'Php-curl' Instalando foi suficiente :-)
Stephan Vierkant

0

Usuários do Windows:

Nota: Nota aos usuários do Win32 Para ativar este módulo em um ambiente Windows, libeay32.dll e ssleay32.dll ou, como no OpenSSL 1.1 libcrypto- .dll e libssl- .dll, devem estar presentes no seu PATH. Também libssh2.dll deve estar presente no seu PATH. Você não precisa do libcurl.dll no site cURL.

https://www.php.net/manual/en/curl.installation.php

Adicione seu C: \ wamp \ bin \ php \ php7.1.15 ao seu PATH

Reinicie todos os serviços


0

Se você tiver 404 ou erros enquanto sudo apt-get install php-curlapenas tenta

sudo apt-get update

e tente novamente

sudo apt-get install php-curl

Mas observe qual versão foi instalada (eu uso o php7.3 e o php7.4-curl foi instalado - para que não funcione)

tente então

sudo apt-get install php7.3-curl

No final, você pode querer reiniciar serviços como: apache2 ou php-fpm:

sudo apache2 restart
sudo service php7.3-fpm restart

isso funcionou para mim.

Verifique se o curl está na lista de módulos instalados para o php atual:

php -m

insira a descrição da imagem aqui


-2

Experimente se você conseguir E: Unable to locate package {packageName}

sudo add-apt-repository main
sudo add-apt-repository universe
sudo add-apt-repository restricted
sudo add-apt-repository multiverse
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php-curl

1
tantos votos negativos, como na resposta Bijaya Kumar Oli é solução trabalhada!
Vladimir Ch
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.