Symfony 3.0迁移PHP 5.5到PHP 7.1:"应该安装PHP加速器>安装和/或启用PHP加速器(强烈推荐)"?

时间:2017-01-24 09:49:24

标签: php symfony php-7 php-5.5 php-7.1

我想在SYMFONY 3.0项目中将PHP5.5升级到7.1。

我一直在检查" php.ini"文件以获得正确的结果。

最后一件事尚未解决: 在PHP5.5下,我使用了扩展加速器 php_apcu.dll 。这不在PHP7中维护。

我一直在寻找替代方案,并且我读了here PHP7中不再需要加速器,因为已经嵌入了它。

当我执行CLI:" php bin / symfony_requirements"时,会出现以下消息:

  

应安装PHP加速器>安装和/或启用PHP>加速器(强烈推荐)

根据我的理解,我不需要添加新的扩展程序,但我可以启用某些PHP7中的加速器。

是否有人知道"加速器"参数需要设置为" true"在PHP7中,还是默认运行(并且应该忽略Symfony错误消息),或者应该安装新的扩展名(different from the deprecated APC as the wiki page explains)?

更新 收到关于这个问题的评论后,我加入了我的" php.ini"以下设置:

opcache.enable=1 
opcache.enable_cli=1 
opcache.memory_consumption=128 
opcache.interned_strings_buffer=8 
opcache.max_accelerated_files=2000 
opcache.revalidate_freq=60 
opcache.fast_shutdown=1 

我重新启动了Apache服务,当我执行CLI时:" php bin / symfony_requirements",我仍然收到以下消息:

  

应安装PHP加速器>安装和/或启用PHP>加速器(强烈推荐)

有关@LBA所需信息的更新 我做了一个CLI"作曲家更新"在我的Symfony项目的文件夹中。

然后,当我执行CLI时:" php bin / symfony_requirements",我得到:

  

PHP注意:遇到一个非常好的数值   d:\应用\ Apache24 \ htdocs中\ symf \ my_symf_project \ VAR \ SymfonyRequirements.php   在第759行

     

注意:遇到的格式不正确的数值   d:\应用\ Apache24 \ htdocs中\ symf \ my_symf_project \ VAR \ SymfonyRequirements.php   在第759行

     

Symfony2要求检查器~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     
    

PHP正在使用以下php.ini文件:D:\ Application \ php7 \ php.ini

         

检查Symfony要求:................ W ............... W .......

  
     

[确定]您的系统已准备好运行Symfony2项目

     

改善设置的可选建议   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     
      
  • 要求文件应该是最新的

         
        

    您的需求文件已过时。运行composer install和     重新检查您的配置。

      
  •   
  • 应安装PHP加速器

         
        

    安装和/或启用PHP加速器(强烈推荐)。

      
  •   
     

注意命令控制台可以使用不同的php.ini文件~~~~   而不是您的Web服务器使用的那个。要上         安全方面,请检查您的网络要求         服务器使用web / config.php脚本。

关于环境设置(在Windows10上):

  1. 以前,我已经改变了我的"路径"环境变量" [文件夹位置 PHP7] \ PHP7 \"当我发布一个" php -v"我明白了:
  2.   

    PHP 7.1.1(cli)(内置:2017年1月18日18:38:49)(ZTS MSVC14(Visual C ++)   2015)x64)版权所有(c)1997-2017 PHP Group Zend Engine v3.1.0,   版权所有(c)1998-2017 Zend Technologies

    symfony项目中的composer文件如下所示:

        "require": {
            "php": ">=5.5.9",
    ...}
    

    如果我尝试将值更改为" php":"> = 7.1.0"并推出"作曲家更新"它给出了:

      

    使用包信息加载作曲家存储库更新   依赖项(包括require-dev)您的要求不可能   解决了一组可安装的软件包。

         

    问题1        - 此软件包需要php> = 7.1.0,但您的PHP版本(5.5.9)不满足该要求。

    因此,我的环境变量与Symfony有问题。

    如果我phpinfo(),而不是在Symfony中,而是使用常规的PHP服务器页面,那么它最重要的是: PHP Version 7.1.1

1 个答案:

答案 0 :(得分:3)

这是解决方案,我需要做的两件事:

第一:确实需要 opcache

php.ini 中,而不是symfony documentationphp manual中指示的设置。我忘了在 php.ini

中添加要使用的扩展名

zend_extension =" [你的php7之路] \ php7 \ ext \ php_opcache.dll"

(好吧,它在php manual documentation here

第二:在symfony方面,我必须更新[project path] \ composer.json中的以下设置,以确保Symfony使用PHP7:

{
    "require": {
        "php": ">=7.1.1",
         ....
    },
    ....
    "config": {
        "platform": {
            "php": "7.1.1"
        }
    },
}