PHP-FPM降级后的编写器错误

PHP-FPM降级后的编写器错误,php,nginx,Php,Nginx,我最近通过清除nginx和phpfpm并删除php7fpm文件夹,将我的PHP-FPM版本从7降级到5.6。它运行得很好,因为我的php版本现在是5.6 $ php -v PHP 5.6.30 (cli) (built: Dec 13 2017 00:40:36) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies 我的问题是,每当我在我的项目上

我最近通过清除nginx和phpfpm并删除php7fpm文件夹,将我的PHP-FPM版本从7降级到5.6。它运行得很好,因为我的php版本现在是5.6

$ php -v
PHP 5.6.30 (cli) (built: Dec 13 2017 00:40:36) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
我的问题是,每当我在我的项目上安装
composer
时,都会出现以下错误:

Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for behat/behat 3.2.x-dev -> satisfiable by behat/behat[3.2.x-dev].
    - behat/behat 3.2.x-dev requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
  Problem 2
    - Installation request for behat/behat dev-master -> satisfiable by behat/behat[dev-master].
    - behat/behat dev-master requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
  Problem 3
    - Installation request for instaclick/php-webdriver 1.4.5 -> satisfiable by instaclick/php-webdriver[1.4.5].
    - instaclick/php-webdriver 1.4.5 requires ext-curl * -> the requested PHP extension curl is missing from your system.
  Problem 4
    - behat/behat 3.2.x-dev requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - behat/symfony2-extension dev-master requires behat/behat ~3.0,>=3.0.4 -> satisfiable by behat/behat[3.2.x-dev].
    - Installation request for behat/symfony2-extension dev-master -> satisfiable by behat/symfony2-extension[dev-master].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/7.1/cli/php.ini
    - /etc/php/7.1/cli/conf.d/10-opcache.ini
    - /etc/php/7.1/cli/conf.d/10-pdo.ini
    - /etc/php/7.1/cli/conf.d/15-xml.ini
    - /etc/php/7.1/cli/conf.d/20-calendar.ini
    - /etc/php/7.1/cli/conf.d/20-ctype.ini
    - /etc/php/7.1/cli/conf.d/20-dom.ini
    - /etc/php/7.1/cli/conf.d/20-exif.ini
    - /etc/php/7.1/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.1/cli/conf.d/20-ftp.ini
    - /etc/php/7.1/cli/conf.d/20-gettext.ini
    - /etc/php/7.1/cli/conf.d/20-iconv.ini
    - /etc/php/7.1/cli/conf.d/20-json.ini
    - /etc/php/7.1/cli/conf.d/20-phar.ini
    - /etc/php/7.1/cli/conf.d/20-posix.ini
    - /etc/php/7.1/cli/conf.d/20-readline.ini
    - /etc/php/7.1/cli/conf.d/20-shmop.ini
    - /etc/php/7.1/cli/conf.d/20-simplexml.ini
    - /etc/php/7.1/cli/conf.d/20-sockets.ini
    - /etc/php/7.1/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.1/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.1/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.1/cli/conf.d/20-tokenizer.ini
    - /etc/php/7.1/cli/conf.d/20-wddx.ini
    - /etc/php/7.1/cli/conf.d/20-xmlreader.ini
    - /etc/php/7.1/cli/conf.d/20-xmlwriter.ini
    - /etc/php/7.1/cli/conf.d/20-xsl.ini
正如您所看到的,错误仍然引用PHP7,考虑到我的PHP版本现在是5.6,这真的很奇怪

$ php -v
PHP 5.6.30 (cli) (built: Dec 13 2017 00:40:36) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
你知道哪里不对吗?谢谢。

将锁定文件移动(或删除)到临时名称,然后再次执行编写器更新。这将删除锁文件中包含的旧数据,并且只使用composer.json中的最新数据

mv composer.lock{,.bak} #move to composer.lock.bak
composer install #installs the project dependencies from the composer.lock file if present, or falls back on the composer.json

作为一个不相关的注释,为确保您的web服务器使用的是正确的php版本,请在网站的根文件夹中创建一个网页,其中仅包含:

<?php phpinfo();

@jhourlad estrella如果答案对你有帮助,别忘了将其标记为已接受;)