How do I install the ext-curl extension with PHP 7?

PhpCurlPhp 7

Php Problem Overview


I've installed PHP 7 using this repo, but when I try to run composer install, it's giving this error:

> - [package] requires ext-curl * -> the requested PHP extension curl is missing from your system.

With PHP 5, you can easily install it by running the yum or apt-get install php5-curl command, but I can't find how to install the PHP 7 equivalent.

How do I install ext-curl for PHP 7?

Php Solutions


Solution 1 - Php

Well I was able to install it by :

sudo apt-get install php-curl

on my system. This will install a dependency package, which depends on the default php version.

After that restart apache

sudo service apache2 restart

Solution 2 - Php

sudo apt-get install php7.0-curl

Solution 3 - Php

If "sudo apt-get install php-curl" command doesnt work and display error We should run this code before install curl.

  • step1 - sudo add-apt-repository ppa:ondrej/php
  • step2 - sudo apt-get update
  • step3 - sudo apt-get install php-curl
  • step4 - sudo service apache2 restart

Solution 4 - Php

I tried the above solutions but it didn't work for me, just incase there any other person in the same shoes, this is what I did. I updated apt-get with the following command

sudo add-apt-repository ppa:ondrej/php

this i installed with php curl for the version of php that i was using, mine was

sudo apt-get install php7.1-curl

Solution 5 - Php

We can install any PHP7 Extensions which we are needed at the time of install Magento just use related command which you get error at the time of installin 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

Solution 6 - Php

If You have 404 or errors while sudo apt-get install php-curl just try

sudo apt-get update

and again try

sudo apt-get install php-curl

But notice what version was installed (i use php7.3 and php7.4-curl was installed - so it will not work)

try then

sudo apt-get install php7.3-curl

At the end You may want to restart services like: apache2 or php-fpm:

sudo apache2 restart
sudo service php7.3-fpm restart

this worked for me.

Check if curl is on the installed modules list for current php:

php -m

enter image description here

Solution 7 - Php

If you are using PHP7.1 ( try php -version to find your PHP version)

sudo apt-get install php7.1-curl

then restart apache

sudo service apache2 restart

Solution 8 - Php

First Login to your server and check the PHP version which is installed on your server.

And then run the following commands:

sudo apt-get install php7.2-curl

sudo service apache2 restart

Replace the PHP version ( php7.2 ), with your PHP version.

Solution 9 - Php

I got an error that the CURL extension was missing whilst installing WebMail Lite 8 on WAMP (so on Windows).

After reading that libeay32.dll was required which was only present in some of the PHP installation folders (such as 7.1.26), I switched the PHP version in use from 7.2.14 to 7.1.26 in the WAMP PHP version menu, and the error went away.

Solution 10 - Php

install php70w-common.

It provides 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, php-reflection, php-session, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib.

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

Solution 11 - Php

Windows users:

> Note: Note to Win32 Users In order to enable this module on a Windows > environment, libeay32.dll and ssleay32.dll, or, as of OpenSSL 1.1 > libcrypto-.dll and libssl-.dll, must be present in your PATH. Also > libssh2.dll must be present in your PATH. You don't need libcurl.dll > from the cURL site.

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

Add your C:\wamp\bin\php\php7.1.15 to your PATH

Restart all services

Solution 12 - Php

Try it if you get 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

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionStephan VierkantView Question on Stackoverflow
Solution 1 - PhpSabeeh ChaudhryView Answer on Stackoverflow
Solution 2 - Phpjk2KView Answer on Stackoverflow
Solution 3 - PhpBijaya Kumar OliView Answer on Stackoverflow
Solution 4 - PhpExcellent LawrenceView Answer on Stackoverflow
Solution 5 - PhpNarendra SolankiView Answer on Stackoverflow
Solution 6 - PhpJakub UjvvaryView Answer on Stackoverflow
Solution 7 - PhpJoyalView Answer on Stackoverflow
Solution 8 - PhpVarun P VView Answer on Stackoverflow
Solution 9 - PhpSharpCView Answer on Stackoverflow
Solution 10 - PhpCiaranSynnottView Answer on Stackoverflow
Solution 11 - PhpMartyBoggsView Answer on Stackoverflow
Solution 12 - PhpLiao San KaiView Answer on Stackoverflow