如何在我更新到 PHP7 并创建一个包含新 php.ini 文件的新文件夹后获取旧的 php.ini 设置

How to get old php.ini settings after I updated to PHP7 and created a new folder with new php.ini files

我更新了 ubuntu 服务器并安装了新的 PHP7。

我有一个使用 CURL 和 FORK 的 PHP 代码,但 CURL 停止工作了。

收到此错误:

Message: Call to undefined function curl_init()

我发现我在 /etc 中有 2 个 php 文件夹 - /etc/php5(旧的)和另一个 /etc/php/7.0 以及新的 PHP .

当我 运行 info() 函数时,我可以清楚地看到它使用新的 7.0,其中我的所有配置都设置为默认值!

CURL 停止工作,我还没有检查 FORK,但我想它也被禁用了。

哦,当尝试在 PHP 上启用 CURL 时(将 ;extension=php_curl.dll 更改为 extension=php_curl.dll Call to undefined function curl_init().?

我在 运行 包含 CURL 的代码时收到此错误:

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_curl.dll' - /usr/lib/php/20151012/php_curl.dll: cannot open shared object file: No such file or directory in Unknown on line 0

CURL 已启用,仔细检查 -

var_dump(_isCurl());
function _isCurl(){
    return function_exists('curl_version');
}

returns 是的。

这是怎么发生的? Ubuntu 怎么不知道自动执行这些操作?最重要的是:

对此最正确的解决方案是什么?

更多有用信息:

root@YHserver:/var/www/html/tools# grep -Hrv ";" /etc/php5 | grep -i "extension="
/etc/php5/mods-available/pdo_mysql.ini:extension=pdo_mysql.so
/etc/php5/mods-available/curl.ini:extension=curl.so
/etc/php5/mods-available/opcache.ini:zend_extension=opcache.so
/etc/php5/mods-available/json.ini:extension=json.so
/etc/php5/mods-available/gd.ini:extension=gd.so
/etc/php5/mods-available/mcrypt.ini:extension=mcrypt.so
/etc/php5/mods-available/mysql.ini:extension=mysql.so
/etc/php5/mods-available/pdo.ini:extension=pdo.so
/etc/php5/mods-available/mysqli.ini:extension=mysqli.so
/etc/php5/mods-available/readline.ini:extension=readline.so
/etc/php5/apache2/conf.d/pcntl.so:extension=pcntl.so
/etc/php5/apache2/conf.d/pcntl.ini:extension=pcntl.so

root@YHserver:/etc/php5/apache2# grep -Hrv ";" /etc/php/7.0 | grep -i "extension="
/etc/php/7.0/mods-available/ftp.ini:extension=ftp.so
/etc/php/7.0/mods-available/wddx.ini:extension=wddx.so
/etc/php/7.0/mods-available/pdo_mysql.ini:extension=pdo_mysql.so
/etc/php/7.0/mods-available/calendar.ini:extension=calendar.so
/etc/php/7.0/mods-available/xmlwriter.ini:extension=xmlwriter.so
/etc/php/7.0/mods-available/curl.ini:extension=curl.so
/etc/php/7.0/mods-available/sockets.ini:extension=sockets.so
/etc/php/7.0/mods-available/sysvmsg.ini:extension=sysvmsg.so
/etc/php/7.0/mods-available/tokenizer.ini:extension=tokenizer.so
/etc/php/7.0/mods-available/opcache.ini:zend_extension=opcache.so
/etc/php/7.0/mods-available/json.ini:extension=json.so
/etc/php/7.0/mods-available/gd.ini:extension=gd.so
/etc/php/7.0/mods-available/mcrypt.ini:extension=mcrypt.so
/etc/php/7.0/mods-available/fileinfo.ini:extension=fileinfo.so
/etc/php/7.0/mods-available/exif.ini:extension=exif.so
/etc/php/7.0/mods-available/shmop.ini:extension=shmop.so
/etc/php/7.0/mods-available/pdo.ini:extension=pdo.so
/etc/php/7.0/mods-available/sysvsem.ini:extension=sysvsem.so
/etc/php/7.0/mods-available/mbstring.ini:extension=mbstring.so
/etc/php/7.0/mods-available/mysqli.ini:extension=mysqli.so
/etc/php/7.0/mods-available/xmlreader.ini:extension=xmlreader.so
/etc/php/7.0/mods-available/ctype.ini:extension=ctype.so
/etc/php/7.0/mods-available/xml.ini:extension=xml.so
/etc/php/7.0/mods-available/phar.ini:extension=phar.so
/etc/php/7.0/mods-available/gettext.ini:extension=gettext.so
/etc/php/7.0/mods-available/mysqlnd.ini:extension=mysqlnd.so
/etc/php/7.0/mods-available/simplexml.ini:extension=simplexml.so
/etc/php/7.0/mods-available/readline.ini:extension=readline.so
/etc/php/7.0/mods-available/dom.ini:extension=dom.so
/etc/php/7.0/mods-available/iconv.ini:extension=iconv.so
/etc/php/7.0/mods-available/posix.ini:extension=posix.so
/etc/php/7.0/mods-available/sysvshm.ini:extension=sysvshm.so
/etc/php/7.0/mods-available/xsl.ini:extension=xsl.so
/etc/php/7.0/cli/php.ini:extension=php_curl.dll
/etc/php/7.0/apache2/php.ini:extension=php_curl.dll

好像是

运行

sudo apt-get dist-upgrade

解决了问题。