Issue
I have a wordpress plugin that is trying to use curl but giving me the following error.
PHP Fatal error: Uncaught Error: Call to undefined function curl_init()
$curl = curl_init();
I have the same issue on my local dev environment and in my staging environment.
http://topmortgagepro.com/whats-your-home-worth/ At the time of posting it will include the phpinfo() That will be removed if you see this at a later time. htaccess user/password is pixona:pixona to see the site.
I have tried many solutions offered with no luck. Open to ideas and can show other config settings as needed.
I have tried the following and restarted apache after each (on local machine):
apt-get install php-curl
apt-get install php7.0-curl
edited the php.ini to uncomment the following:
extension=php_curl.dll
extension=php_bz2.dll
added this extension in the php.ini
extension=php_curl.so
phpenmod curl
Solution
The solution came down to the distribution being out of date. To diagnose the issue I made a sample script to see if curl was loading.
<?php
if (!extension_loaded('curl')) {
echo 'failed';
} else {
echo 'loaded';
}
?>
This gave me the following error:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20131226/curl.so' - /usr/lib/php/20131226/curl.so: undefined symbol: zend_unset_property in Unknown on line 0
With that I came across this other question which suggested doing
apt-get dist-upgrade
PHP Startup: Unable to load dynamic library `curl.so` Ubuntu
After the upgrade (I used the new php.ini) the script worked perfectly.
Answered By - PhxSteve Answer Checked By - Marilyn (WPSolving Volunteer)